{
public:
+ // Properties
+ enum
+ {
+ TEXTINPUT_PROPERTY_START_INDEX = Control::CONTROL_PROPERTY_END_INDEX + 1,
+ TEXTINPUT_PROPERTY_END_INDEX = TEXTINPUT_PROPERTY_START_INDEX + 512 ///< Reserving property indices
+ };
+
/**
* Create a new TextInput
* @return instrusive ptr to a TextInput
*/
std::size_t GetNumberOfCharacters() const;
+ /**
+ * Styling
+ */
+
+ /**
+ * Set the diffuse color for the highlight
+ * @param[in] color color to use
+ */
+ void SetMaterialDiffuseColor( const Vector4& color );
+
+ /**
+ * Get the diffuse color used by the highlight
+ * @return color
+ */
+ const Vector4& GetMaterialDiffuseColor() const;
+
private:
/**
void ClearPopup();
/**
- * Adds a popup option.
- * @note Creates popup frame if not already created.
- * @param[in] name The unique name for this option.
- * @param[in] caption The caption (label) for this option
- * @param[in] icon the image icon to be displayed for this option
- * @param[in] finalOption Flag to indicate that this is the final option.
- * (set to true on the last option you add)
+ * Adds Popup options which have been enabled.
*/
- void AddPopupOption(const std::string& name, const std::string& caption, const Image icon, bool finalOption = false);
+ void AddPopupOptions();
/**
* Sets popup position
*/
void GetTextLayoutInfo();
+ // Properties
+
+ /**
+ * Called when a property of an object of this type is set.
+ * @param[in] object The object whose property is set.
+ * @param[in] index The property index.
+ * @param[in] value The new property value.
+ */
+ static void SetProperty( BaseObject* object, Property::Index index, const Property::Value& value );
+
+ /**
+ * Called to retrieve a property of an object of this type.
+ * @param[in] object The object whose property is to be retrieved.
+ * @param[in] index The property index.
+ * @return The current value of the property.
+ */
+ static Property::Value GetProperty( BaseObject* object, Property::Index propertyIndex );
+
/**
* Emits the style changed signal.
*/
Clipboard mClipboard; ///< Handle to clipboard
+ // Styling
+ Vector4 mMaterialColor; // Color of the highlight
+
bool mOverrideAutomaticAlignment:1; ///< Whether to override the alignment automatically set by the text content (e.g. european LTR or arabic RTL)
bool mCursorRTLEnabled:1; ///< Enable state of Alternate RTL Cursor (need to keep track of this as it's not always enabled)
bool mClosestCursorPositionEOL:1; ///< closest cursor position is end of line.