RuntimeTextArea

Overview

The IRuntimeTextArea interface supports scripting for runtime text area components in Servoy, offering input, text handling, read-only mode, scrolling, and placeholder functionalities.

Extends

RuntimeComponent

Properties Summarized

Type
Name
Summary

Gets or sets the background color of a field.

Gets or sets the border attribute(s) of a specified element.

Gets or sets the number value (position) of the text caret (text "I" bar) in a field.

Gets or sets the editable/read-only state of a field; true - editable; false - read-only.

Gets or sets the enabled state of a specified field, also known as "grayed".

Gets or sets the foreground color of a field.

Gets or sets the font name, style, and size of an element.

Gets or sets the placeholder text in a field.

Gets or sets the editable/read-only state of a field; true - read-only; false - editable; ! - the editable/read-only state is inverted (the opposite).

Gets or sets the title text.

Gets or sets the tool tip text of an element; text displays when the mouse cursor hovers over an element.

Gets or sets the transparency of an element; true - transparent; false - not transparent.

Gets or sets the visibility of an element; true - visible; false - not visible; ! - the visibility state is inverted (the opposite).

Methods Summarized

Type
Name
Summary

void

Adds a style to the styleClass property.

Returns the absolute form (designed) Y location.

Gets the specified client property for the element based on a key.

Get the data provider this UI element (display) is showing.

Get the design-time properties of an element.

Get a design-time property of an element.

Returns the type of a specified element.

Returns the name of the form.

Returns the height of the current element.

Returns an Array of label element names that has this field filled in as the labelFor.

Returns the x location of the current element.

Returns the y location of the current element.

Returns the name of an element.

Returns the x scroll location of specified element - only for an element where height of element is less than the height of element content.

Returns the y scroll location of specified element - only for an element where height of element is less than the height of element content.

Returns the currently selected text in the specified text field or text area.

Returns the width of the current element.

void

Check if an element already have a style from the styleClass property.

void

Sets the value for the specified element client property key.

void

Removes a style from the styleClass property.

void

Replaces the selected text; if no text has been selected, the replaced value will be inserted at the last cursor position.

void

Request the focus in this element.

void

Request the focus in this element.

void

Selects all the contents of a field.

void

Sets the location of an element.

void

Sets the scroll location of an element.

void

Sets the size of an element.

Properties Detailed

bgcolor

Gets or sets the background color of a field. The color has to be set using the hexadecimal RGB value as used in HTML. It only returns it's correct value if it was explicitly set.

Type String

Sample

//sets the background color of the field
myElement.bgcolor = "#FFFFFF";
//gets the background color of the field
var c = myElement.bgcolor;

border

Gets or sets the border attribute(s) of a specified element.

The border attributes:

borderType - EmptyBorder, EtchedBorder, BevelBorder, LineBorder, TitleBorder, MatteBorder, SpecialMatteBorder. size - (numeric value) for: bottom, left, right, top. color - (hexadecimal value) for: bottom, left, right, top. dash pattern - (numeric value) for selected side(s). rounding radius - (numeric value) for selected side(s).

It only returns it's correct value if it was explicitly set.

NOTE: Use the same value(s) and order of attribute(s) from the element design time property "borderType".

Type String

Sample

//sets the border type to "LineBorder"
//sets a 1 px line width for the bottom and left side of the border
//sets the hexadecimal color of the border to "#ccffcc"
myElement.border = 'LineBorder,1,#ccffcc';

caretPosition

Gets or sets the number value (position) of the text caret (text "I" bar) in a field. NOTE: This does not work in Web Client.

Type Number

Sample

//get the current caretposition
var caretPos = myElement.caretPosition;
//add one and set it
myElement.caretPosition = caretPos+1;

editable

Gets or sets the editable/read-only state of a field; true - editable; false - read-only.

NOTE the "!" operator can be used to invert the editable state.

Type Boolean

Sample

var currentState = myElement.editable;
myElement.editable = !currentState;

enabled

Gets or sets the enabled state of a specified field, also known as "grayed". true - enabled; false - not enabled; ! - the enabled state is inverted (the opposite).

NOTE: A disabled element cannot be selected by clicking the element (or by pressing the TAB key even if this option is supported by the operating system).

NOTE: A label or button element will not disable if the "displayType" design time property for a field is set to HTML_AREA.

NOTE: The disabled "grayed" color is dependent on the LAF set in the Servoy Client Application Preferences. For more information see Preferences: Look And Feel in the Servoy Developer User's Guide.

Type Boolean

Sample

//gets the enabled state of the field
var currState = myElement.enabled;

//sets the enabled state of the field
myElement.enabled = !currentState;

fgcolor

Gets or sets the foreground color of a field. The color has to be set using the hexadecimal RGB value as used in HTML. It only returns it's correct value if it was explicitly set.

Type String

Sample

//sets the foreground color of the field
myElement.fgcolor = "#000000";

//gets the foreground color of the field
var c = myElement.fgcolor;

font

Gets or sets the font name, style, and size of an element.

font name - the name of the font family. style - the type of the font. (plain = 0; bold = 1; italic = 2; bold-italic = 3). size - the size of the font (in points).

It only returns it's correct value if it was explicitly set.

Type String

Sample

myElement.font = 'Tahoma,1,11';

placeholderText

Gets or sets the placeholder text in a field.

Type String

Sample

//get the placeholder text
var placeholderText = myElement.placeholderText;
//set another placeholder
myElement.placeholderText = 'Search..';

readOnly

Gets or sets the editable/read-only state of a field; true - read-only; false - editable; ! - the editable/read-only state is inverted (the opposite).

NOTE: A field set as read-only can be selected by clicking (or pressing the TAB key if this option is supported by the operating system) and the field data can be copied.

Type Boolean

Sample

//gets the editable/read-only state of the field
var currentState = myElement.readOnly;

//sets the editable/read-only state of the field
myElement.readOnly = !currentState;

titleText

Gets or sets the title text.

Type String

Sample

var titleText = myElement.titleText;

toolTipText

Gets or sets the tool tip text of an element; text displays when the mouse cursor hovers over an element.

NOTE: HTML should be used for multi-line tooltips; you can also use any valid HTML tags to format tooltip text.

Type String

Sample

//gets the tooltip text of the element
var toolTip = myElement.toolTipText;

//sets the tooltip text of the element
myElement.toolTipText = "New tip";
myElement.toolTipText = "<html>This includes <b>bolded text</b> and <font color='blue'>BLUE</font> text as well.";

transparent

Gets or sets the transparency of an element; true - transparent; false - not transparent.

NOTE: transparency can be inverted using ! operator: elements.elementName.transparent = !elements.elementName.transparent;

NOTE: transparency will be mostly used for background color, a transparent element will receive the background of the element "beneath" it, a non transparent one will use its own background color

Type Boolean

Sample

//gets the transparency of the element
var currentState = myElement.transparent;

//sets the transparency of the element
myElement.transparent = !currentState;

visible

Gets or sets the visibility of an element; true - visible; false - not visible; ! - the visibility state is inverted (the opposite).

NOTE: The visibility of an element is not persistent; the state of visibility only applies to the current user in his/her current session.

Type Boolean

Sample

//sets the element as visible
forms.company.elements.faxBtn.visible = true;

//gets the visibility of the element
var currentState = forms.company.elements.faxBtn.visible;

//sets the element as not visible when the current state is visible
forms.company.elements.faxBtn.visible = !currentState;

Methods Detailed

addStyleClass(styleName)

Adds a style to the styleClass property. This works only for NGClient where multiple styles are supported.

Parameters

  • String styleName the name of the style class to add

Returns: void

Sample

myElement.addStyleClass('redbg');

getAbsoluteFormLocationY()

Returns the absolute form (designed) Y location.

Returns: Number The y location of the form in pixels.

Sample

var absolute_y = myElement.getAbsoluteFormLocationY();

getClientProperty(key)

Gets the specified client property for the element based on a key.

NOTE: Depending on the operating system, a user interface property name may be available.

Parameters

  • Object key user interface key (depends on operating system)

Returns: Object The value of the property for specified key.

Sample

var property = myElement.getClientProperty('ToolTipText');

getDataProviderID()

Get the data provider this UI element (display) is showing.

Returns: String The data provider as String.

Sample

myElement.getDataProviderID();

getDesignProperties()

Get the design-time properties of an element.

Returns: Object

Sample

var prop = forms.orders.elements.mylabel.getDesignProperties()

getDesignTimeProperty(key)

Get a design-time property of an element.

Parameters

  • String key the name of the property

Returns: Object

Sample

var prop = forms.orders.elements.mylabel.getDesignTimeProperty('myprop')

getElementType()

Returns the type of a specified element.

Returns: String The display type of the element as String.

Sample

var et = myElement.getElementType();

getFormName()

Returns the name of the form. (may be empty string as well)

Returns: String The name of the form.

Sample

var name = myElement.getFormName();

getHeight()

Returns the height of the current element. NOTE: getHeight() can be used with getWidth() to set the size of an element using the setSize function. For example:

//returns the width (w) and height (h) var w = forms.company.elements.faxBtn.getWidth(); var h = forms.company.elements.faxBtn.getHeight();

//sets the new size forms.company.elements.faxBtn.setSize(w,h);

//sets the new size and adds 1 px to both the width and height forms.company.elements.faxBtn.setSize(w+1,h+1);

Returns: Number The height of the element in pixels.

Sample

var ht = myElement.getHeight();

getLabelForElementNames()

Returns an Array of label element names that has this field filled in as the labelFor.

Returns: Array An array with element names.

Sample

var array = elements.name_first.getLabelForElementNames();
for (var i = 0; i<array.length; i++)
{
	elements[array[i]].fgcolor = "#ff00ff";
}

getLocationX()

Returns the x location of the current element.

NOTE: getLocationX() can be used with getLocationY() to set the location of an element using the setLocation function. For Example:

//returns the X and Y coordinates var x = forms.company.elements.faxBtn.getLocationX(); var y = forms.company.elements.faxBtn.getLocationY();

//sets the new location 10 px to the right; 10 px down from the current location forms.company.elements.faxBtn.setLocation(x+10,y+10);

Returns: Number The x location of the element in pixels.

Sample

var x = myElement.getLocationX();

getLocationY()

Returns the y location of the current element. The method can only be used in Record view.

NOTE: getLocationY() can be used with getLocationX() to set the location of an element using the setLocation function. For Example:

//returns the X and Y coordinates var x = forms.company.elements.faxBtn.getLocationX(); var y = forms.company.elements.faxBtn.getLocationY();

//sets the new location 10 px to the right; 10 px down from the current location forms.company.elements.faxBtn.setLocation(x+10,y+10);

Returns: Number The y location of the element in pixels.

Sample

var y =  myElement.getLocationY();

getName()

Returns the name of an element. (may be null as well)

Returns: String The name of the element.

Sample

var name = myElement.getName();

getScrollX()

Returns the x scroll location of specified element - only for an element where height of element is less than the height of element content.

NOTE: getScrollX() can be used with getScrollY() to set the scroll location of an element using the setScroll function. For Example:

//returns the X and Y scroll coordinates var x = forms.company.elements.portal50.getScrollX(); var y = forms.company.elements.portal50.getScrollY();

//sets the new scroll location forms.company.elements.portal50.setScroll(x+10,y+10);

Returns: Number The x scroll location in pixels.

Sample

var x = myElement.getScrollX();

getScrollY()

Returns the y scroll location of specified element - only for an element where height of element is less than the height of element content.

NOTE: getScrollY() can be used with getScrollX() to set the scroll location of an element using the setScroll function. For Example:

//returns the X and Y scroll coordinates var x = forms.company.elements.portal50.getScrollX(); var y = forms.company.elements.portal50.getScrollY();

//sets the new scroll location forms.company.elements.portal50.setScroll(x+10,y+10);

Returns: Number The y scroll location in pixels.

Sample

var y = myElement.getScrollY();

getSelectedText()

Returns the currently selected text in the specified text field or text area.

NOTE: This does not work for text fields in the Web Client.

Returns: String The selected text from the component.

Sample

var my_text = myElement.getSelectedText();

getWidth()

Returns the width of the current element.

NOTE: getWidth() can be used with getHeight() to set the size of an element using the setSize function. For Example:

//returns the width (w) and height (h) var w = forms.company.elements.faxBtn.getWidth(); var h = forms.company.elements.faxBtn.getHeight();

//sets the new size forms.company.elements.faxBtn.setSize(w,h);

//sets the new size and adds 1 px to both the width and height forms.company.elements.faxBtn.setSize(w+1,h+1);

Returns: Number The width of the element in pixels.

Sample

var w = myElement.getWidth();

hasStyleClass(styleName)

Check if an element already have a style from the styleClass property.

Parameters

  • String styleName the name of the style class to be checked

Returns: void

Sample

myElement.hasStyleClass('redbg');

putClientProperty(key, value)

Sets the value for the specified element client property key.

NOTE: Depending on the operating system, a user interface property name may be available.

Parameters

  • Object key user interface key (depends on operating system)

  • Object value a predefined value for the key

Returns: void

Sample

myElement.putClientProperty('ToolTipText','some text');

removeStyleClass(styleName)

Removes a style from the styleClass property. This works only for NGClient where multiple styles are supported.

Parameters

  • String styleName the name of the style class to remove

Returns: void

Sample

myElement.removeStyleClass('redbg');

replaceSelectedText(s)

Replaces the selected text; if no text has been selected, the replaced value will be inserted at the last cursor position.

NOTE: replaceSelectedText applies to text fields and all XXX_AREA displayType text - RTF_AREA, HTML_AREA, or TEXT_AREA.

Parameters

  • String s The replacement text.

Returns: void

Sample

//returns the current selected text
var my_text = myElement.getSelectedText();

//replaces the current selected text
myElement.replaceSelectedText('John');

requestFocus()

Request the focus in this element. (Focus is also a text cursor on text components).

Returns: void

Sample

//request the focus in this myElement (focus is also a text cursor on text components)
myElement.requestFocus();

requestFocus(mustExecuteOnFocusGainedMethod)

Request the focus in this element. (Focus is also a text cursor on text components).

Parameters

  • Boolean mustExecuteOnFocusGainedMethod If true will execute onFocusGained method, else will not; default value is true.

Returns: void

Sample

//request the focus in this myElement (focus is also a text cursor on text components), skip on focus gained method call
myElement.requestFocus(false);

selectAll()

Selects all the contents of a field.

Returns: void

Sample

myElement.selectAll();

setLocation(x, y)

Sets the location of an element. It takes as input the X (horizontal) and Y (vertical) coordinates - starting from the TOP LEFT side of the screen. Please note that location should not be altered at runtime when an element is anchored. Use the solutionModel in such a situation.

NOTE: getLocationX() can be used with getLocationY() to return the current location of an element; then use the X and Y coordinates with the setLocation function to set a new location. For Example:

//returns the X and Y coordinates var x = forms.company.elements.faxBtn.getLocationX(); var y = forms.company.elements.faxBtn.getLocationY();

//sets the new location 10 px to the right; 10 px down from the current location forms.company.elements.faxBtn.setLocation(x+10,y+10);

Parameters

  • Number x the X coordinate of the element in pixels.

  • Number y the Y coordinate of the element in pixels.

Returns: void

Sample

myElement.setLocation(200,200);

setScroll(x, y)

Sets the scroll location of an element. It takes as input the X (horizontal) and Y (vertical) coordinates - starting from the TOP LEFT side of the screen - only for an element where the height of the element is greater than the height of element content

NOTE: getScrollX() can be used with getScrollY() to return the current scroll location of an element; then use the X and Y coordinates with the setScroll function to set a new scroll location. For Example:

//returns the X and Y coordinates var x = forms.company.elements.portal50.getScrollX(); var y = forms.company.elements.portal50.getScrollY();

//sets the new location forms.company.elements.portal50.setScroll(x+10,y+10);

Parameters

  • Number x the X coordinate of the portal scroll location in pixels

  • Number y the Y coordinate of the portal scroll location in pixels

Returns: void

Sample

myElement.setScroll(200,200);

setSize(width, height)

Sets the size of an element. It takes as input the width and the height. Please note that size should not be altered at runtime when an element is anchored. Use the solutionModel in such a situation.

NOTE: getWidth() can be used with getHeight() to set the size of an element using the setSize function. For Example:

//returns the width (w) and height (h) var w = forms.company.elements.faxBtn.getWidth(); var h = forms.company.elements.faxBtn.getHeight();

//sets the new size forms.company.elements.faxBtn.setSize(w,h);

//sets the new size and adds 1 px to both the width and height forms.company.elements.faxBtn.setSize(w+1,h+1);

Parameters

  • Number width the width of the element in pixels.

  • Number height the height of the element in pixels.

Returns: void

Sample

myElement.setSize(20,30);

Last updated