Text reader
Allows long sections of text to be displayed in a collapsible pane, which may be toggled to show more or less data.

Appearance
Width: The width of the text box in (%, px, em) String
Height: The height of the text box in (%, px, em) String
Size: The text size.
{Default | Large | Small}
TextSizeStyle
Label placement: The label placement for the view.
{Top | Left}
LabelPlacement
Label width: The width of the label in px, % or em.\r\nFor example\: 50px, 20%, 0.4em. If no unit is specified, px is assumed. String

Behavior
Max text length: Maximum number of characters displayed until the "read more" hint is shown. If not specified or < 1, then 128 characters is assumed by default. Integer
Read more hint: Text displayed for the "read more" hint String
Read less hint: Text displayed for the "read less" hint String
Initially expanded: When enabled, text reader will be expanded on load Boolean

Events
On Load:
Description: Triggers when control loads
Example:
if (${DeviceSensor}.getDeviceInfo().isIPhone) {me.setExpanded(false);} else {me.setExpanded(true);}
On Click:
Description: Triggers when control is clicked
Example:
me.toggleExpanded()
On Expand:
Description: Triggers when user expands text
Example:
${TextReader2}.setExpanded(false)
On Collapse:
Description: Triggers when user collapses text
Example:
${TextReader2}.setExpanded(true)
Extends:
com.ibm.bpm.coach.CoachView
Methods:

Inherited addClass(name, [replaced])
Add/replace CSS class(es) for this control
NameTypeDefaultDescription
name{string}CSS class name(s) to add to the control. Separate class names by a space if more than one class.
replaced{string}CSS class name(s) to be replaced by the first argument. Separate class names by a space if more than one class.
Example
Button.addClass("green");

Inherited getData() Returns: {Object}
Retrieve bound data associated this view/control. Only works for views/controls with bound data.
Example
var dec1 = MyDecimal.getData();

getHeight() Returns: {string}
Get configured height for text reader control (including unit)

getLabel() Returns: {string}
Get label associated with text reader control

getLabelPlacement() Returns: {string}
Get label placement for control. NOTE: This always returns the label placement as set, to avoid ambiguity always set the label placement using "T"|"L"
Example
if(me.getLabelPlacement == "L"){me.setLabelPlacement("T");}

getLabelWidth() Returns: {string}
Get label width of text reader control (e.g. 50px, 20%, 2em - omitting the unit assumes px)

getReadLessHint()
Gets the "read less hint" text of the reader control

getReadMoreHint()
Gets the "read more hint" text of the reader control

getSizeStyle() Returns: {string}
Gets size style of control. NOTE: This always returns the size style as set, to avoid ambiguity always set the size style using "D"|"S"|"L"

getText() Returns: {string}
Get text for text reader control

getType() Returns: {string}
Get descriptive string representing the type of control

getWidth() Returns: {string}
Get configured width for text reader control (including unit)

Inherited hide(collapseFlag)
Hide this view/control
NameTypeDefaultDescription
collapseFlag{boolean}Set to true to collapse the view (equivalent to a view setting of "NONE")
Example
MyView.hide();

Inherited isBound() Returns: {boolean}
Indicates bound status of control.

isExpanded() Returns: {boolean}
Gets the expanded stated of text reader control

isLabelVisible() Returns: {boolean}
Get label visibility for text reader control

Inherited isVisible() Returns: {boolean}
Checks whether or not view is visible
Example
var visible = MyView.isVisible();

Inherited propagateUpValueChange(event) Returns: {boolean}
Propagates value change of control up through parent views
NameTypeDefaultDescription
event{Event}Value change event (usually an onchange event)
Example
MyView.propagateUp(event);

Inherited recalculate()
Only for formula-enabled views!
Explicitly triggers the re-evaluation of the formula
for this view (if a formula has been specified). If the view is not formula-enabled, recalculate() does nothing.
Example
Text1.recalculate();
//If the formula for Text1 is: new Date().toString(), Text1 is updated to the current date/time

setExpanded(flag) Returns: {boolean}
Sets the expanded stated of text reader control. This has no effect is the text length in the control is not greater than the max text length allowed
NameTypeDefaultDescription
flag{boolean}indicating the desired expanded state

setHeight(height)
Set height of text reader control (e.g. 50px, 20%, 2em - omitting the unit assumes px)
NameTypeDefaultDescription
height{string}height of the control

setLabel(label)
Set label for text reader control
NameTypeDefaultDescription
label{string}label for the text reader

setLabelPlacement(placement)
Set label placement for control. NOTE: to avoid ambiguity always set the label placement using "T"|"L"
NameTypeDefaultDescription
placement{string}"T"|"TOP"=Top | "L"|"LEFT"=Left
Example
me.setLabelPlacement("L");

setLabelVisible(flag)
Set label visibility for text reader control
NameTypeDefaultDescription
flag{boolean}set the visibility of the text reader

setLabelWidth(labelWidth)
Set label width of text reader control (e.g. 50px, 20%, 2em - omitting the unit assumes px)
NameTypeDefaultDescription
labelWidth{string}Control's label width

setReadLessHint(text)
Sets the "read less hint" text of the reader control
NameTypeDefaultDescription
text{string}Text to set for the read less hint

setReadMoreHint(text)
Sets the "read more hint" text of the reader control
NameTypeDefaultDescription
text{string}Text to set for the read more hint

setSizeStyle(style)
Sets size style of control. NOTE: to avoid ambiguity always set the size style using "D"|"S"|"L"
NameTypeDefaultDescription
style{string}"DEFAULT"|"DEF"|"NORMAL"|"D"=Default | "SMALL"|"S"=Small | "LARGE"|"L"=Large

setText(text)
Set text for text reader control
NameTypeDefaultDescription
text{string}the text in the text reader

Inherited setViewData(data, createPseudoBinding)
Set/update bound data associated this view/control. Only works for views/controls with bound data.

Note: Should only be used with simple type bindings, or complex type bindings with simple type properties.
Should not be used with bindings that have properties that are lists or compext types. For complex types, set bindings using
the binding.set pattern detailed in the Knowlege Center section Binding Data and Configuration Options
NameTypeDefaultDescription
data{Object}Value of bound data. The type of this parameter must match the type of the bound data.
createPseudoBinding{boolean}If set to true, creates a pseudo binding if there is no current binding.
Example
MyView.setViewData("TEST"); //Updates bound data to the string 'TEST'

Inherited setVisible(visible, collapse)
Show/hide this view/control
NameTypeDefaultDescription
visible{boolean}Visibility flag (true to show view, false to hide)
collapse{boolean}Set to true to collapse the control space when visible is set to false.
Examples
MyView.setVisible(false, false); //Equivalent to MyView.hide()
MyView.setVisible(false, true); // Sets visibility to "None"

setWidth(width)
Set width of text reader control (e.g. 50px, 20%, 2em - omitting the unit assumes px)
NameTypeDefaultDescription
width{string}width of the control

Inherited show()
Show this view/control
Example
MyView.show();

toggleExpanded() Returns: {boolean}
Sets the expanded stated of text reader control. This has no effect is the text length in the control is not greater than the max text length allowed

Inherited triggerFormulaUpdates([phase])
Broadcasts the expression trigger for the specified view
NameTypeDefaultDescription
phase{int}bpmext.ui.PHASE_NORMALThe phase we are currently in
Example
MyView.triggerFormulaUpdates();