Package Max

textedit

Enter text

Description

Provides a user interface within a patcher which can collect typed-in text from the computer-keyboard.

Arguments

None.

Attributes

autoscroll[int]: 1

Toggles autoscrolling in the text display area. The message autoscroll 1 lets you scroll past the amount of text displayed in the textedit window when the number of lines is set to 1 and the word wrapping is disabled (see the wordwrap message) using either the cursor or by clicking and dragging in the textedit window. The default is 0 (autoscroll disabled).

bangmode[int]: 0

When bangmode is set to "Bang Outputs Typed Text" (0 = default) then the textedit object will output the text currently being typed when banged. When set to "Bang Outputs Entered Text" (1) then the textedit object will output the text previously entered (will wait until text being typed is completed before sending the new value). Possible values:

0 = 'Bang Outputs Typed Text'
1 = 'Bang Outputs Entered Text'

bgcolor[4 floats]

Sets the background color of the textedit object in RGBA format.

border[float]: 2.

Sets the size, in pixels, of the border of the textedit object. The default is 1.

bordercolor[4 floats]

Sets the border color of the textedit object in RGBA format. The bordercolor attribute is mapped to the elementcolor style color.

clickmode[int]: 0

Sets the way that the textedit object responds to mouse clicks in the text display area. The message clickmode 0 will send an individual character clicked on out the right outlet of the textedit object. Setting the object with the message clickmode 1 will send the word the user clicks on. The default is 0 (select characters). Possible values:

0 = 'Output Character'
1 = 'Output Word'

keymode[int]: 0

Sets the way that the textedit object responds to carriage returns while typing characters into its text display area. The message keymode 0 allows for text input, and displays carriage returns normally. Setting the object with the message keymode 1 causes the carriage return to output the entire contents of the current buffer. The default is 0 .

lines[int]: 0

Sets the number of lines in the textedit object display.

nosymquotes[int]: 0

Sets whether the textedit object displays quotation marks around a single symbol. Note that once the symbol is sent out of textedit, it will be expressed using quotes in Max. nosymquotes has no effect on contents which contain multiple elements ("foo bar bap" bep will display the same with nosymquotes enabled and disabled).

outputmode[int]: 0

Sets whether the textedit object outputs its contents as a message (0) or as a single symbol (1). The message outputmode 0 causes the output of the object to be sent out as messages. Setting the object with the message outputmode 1 will output the buffer contents as a single symbol. The default is 0 (output as messages).

param_connect[symbol]:

Establishes a two-way connection between the object and a parameter of a compatible object with parameters such as gen~ or jit.gl.slab. The object can be used to change the value of the parameter and will update if the parameter value changes. The easiest way to set param_connect is with the attribute's menu in the inspector or the Connect submenu of the Object Action menu. The menu displays all available parameters of compatible objects.

Setting the param_connect attribute with a message requires the target parameter's path, which is the host object's scriping name followed by two colons and the parameter name. For example, for a gen~ object with scripting name gen~_AB , the path of the freq parameter would be gen~_AB::freq . You can set a value for the param_connect before the host object or parameter exists, and the object will connect to the parameter once it exists. Refer to the user guide entry for param_connect for more details.

parameter_enable[int]

Enables use of this object with Max for Live Parameters.

parameter_mappable[int]: 1

When parameter_mappable is enabled, the object will be available for mapping to keyboard or MIDI input using the Mappings feature.

readonly[int]: 0

Toggles the read only mode of the textedit object. The message readonly 1 disables any user entry into the text box. Messages which operate on the current contents of the textedit buffer such as clear , append , or separator are not affected by the readonly message. The default is 0 (readonly mode off).

rounded[float]: 8.

Sets the rounding radius, in pixels, for the corners of the textedit object.

separator[symbol]: nothing

Designates a symbol as a line separator. and treats it as a carriage return when the contents of the buffer are output. If the buffer contains the text "red green blue" and the object receives the message separator green , the next bang received by textedit will output red (carriage return) blue .

style[symbol]:
7.0.0

Sets the style to be applied to the object. Styles can be set using the Format Palette.

tabmode[int]: 1

Toggles the ability to cause the tab key to output the entire contents of the current buffer. The default is 1 (on).

textcolor[4 floats]

Sets the text color in RGBA format. The textcolor attribute is mapped to the textcolor_inverse style color.

valuemode[int]: 0

When set to 0 (default), textedit will save/restore exactly what is typed into the object, and will output the text as a list of numbers and symbols, even if those symbols are a semicolon (;) or a comma (,). When set to 1, textedit will evaluate the text, as if clicking a message box, will save that evaluated text as the textedit value, respecting special characters like semicolons and commas. This mode is helpful if you wish to use textedit like a message box, where you can send messages with semicolons, separate messages with commas, etc.

wordwrap[int]: 1

Sets the way that the textedit object displays messages which are longer than the textedit display area. The message wordwrap 0 will disable text wrapping on word boundaries in the display area. wordwrap is enabled (set to 1) by default.

Common Box Attributes

Below is a list of attributes shared by all objects. If you want to change one of these attributes for an object based on the object box, you need to place the word sendbox in front of the attribute name, or use the object's Inspector.

annotation[symbol]

Sets the text that will be displayed in the Clue window when the user moves the mouse over the object.

background[int]: 0

Adds or removes the object from the patcher's background layer. background 1 adds the object to the background layer, background 0 removes it. Objects in the background layer are shown behind all objects in the default foreground layer.

color[4 floats]

Sets the color for the object box outline.

fontface[int]

Sets the type style used by the object. The options are:

plain
bold
italic
bold italic Possible values:

0 = 'regular'
1 = 'bold'
2 = 'italic'
3 = 'bold italic'

fontname[symbol]

Sets the object's font.

fontsize[float]

Sets the object's font size (in points). Possible values:

'8'
'9'
'10'
'11'
'12'
'13'
'14'
'16'
'18'
'20'
'24'
'30'
'36'
'48'
'64'
'72'

hidden[int]: 0

Toggles whether an object is hidden when the patcher is locked.

hint[symbol]

Sets the text that will be displayed in as a pop-up hint when the user moves the mouse over the object in a locked patcher.

ignoreclick[int]: 0

Toggles whether an object ignores mouse clicks in a locked patcher.

jspainterfile[symbol]

You can override the default appearance of a user interface object by assigning a JavaScript file with code for painting the object. The file must be in the search path.

patching_rect[4 floats]: 0. 0. 100. 0.

Sets the position and size of the object in the patcher window.

position[2 floats]
write-only

Sets the object's x and y position in both patching and presentation modes (if the object belongs to its patcher's presentation), leaving its size unchanged.

presentation[int]: 0

Sets whether an object belongs to the patcher's presentation.

presentation_rect[4 floats]: 0. 0. 0. 0.

Sets the x and y position and width and height of the object in the patcher's presentation, leaving its patching position unchanged.

rect[4 floats]
write-only

Sets the x and y position and width and height of the object in both patching and presentation modes (if the object belongs to its patcher's presentation).

size[2 floats]
write-only

Sets the object's width and height in both patching and presentation modes (if the object belongs to its patcher's presentation), leaving its position unchanged.

textcolor[4 floats]

Sets the color for the object's text in RGBA format.

textjustification[int]

Sets the justification for the object's text. Possible values:

0 = 'left'
1 = 'center'
2 = 'right'

varname[symbol]

Sets the patcher's scripting name, which can be used to address the object by name in pattr, scripting messages to thispatcher, and the js object.

Parameter Attributes

Orderint

Sets the order of recall of this parameter. Lower numbers are recalled first. The order of recall of parameters with the same order number is undefined.

Parameter Mode Enableint

Parameter Mode Enable (not available from Parameters window)

Link to Scripting Nameint

When checked, the Scripting Name is linked to the Long Name attribute.

Long Namesymbol

The long name of the parameter. This name must be unique per patcher hierarchy.

Short Namesymbol

Sets the short name for the object's visual display. The maximum length varies according to letter width, but is generally in a range of 5 to 7 characters.

Typeint

Specifies the data type. The data types used in Max for Live are:

Float
Int
Enum (enumerated list)
Blob

Note: By convention, the Live application uses floating point numbers for its calculations; the native integer representation is limited to 256 values, with a default range of 0-255 (similar to the char data type used in Jitter). When working with Live UI objects whose integer values will exceed this range, the Type attribute should be set to Float, and the Unit Style attribute should be set to Int.

Range/Enumlist

When used with an integer or floating point data type, this field is used to specify the minimum and maximum values of the parameter.
When used with an enumerated list (Enum) data type, this field contains a space-delimited list of the enumerated values (if list items contain a space or special characters, the name should be enclosed in double quotes).

Clip Modulation Modeint

Sets the Clip Modulation Mode used by the Live application. The modulation modes are:

None
Unipolar
Bipolar
Additive
Absolute

Clip Modulation Rangelist

This parameter is only used with the Absolute modulation mode. It specifies defines the range of values used.

Initial Enableint

When checked (set to 1), the UI object can store an initialization value. The value is set using the Initial attribute (see below).

Initiallist

Sets the initial value to be stored and used when the Initial Enable attribute is checked.

Unit Styleint

Sets the unit style to be used when displaying values. The unit style values are: Int: displays integer values
Float: displays floating point values
Time: displays time values in milliseconds (ms)
Hertz: displays frequency values (Hz/kHz).
deciBel: displays loudness (dB)
%: Percentage
Pan: displays Left and Right values
Semitones: displays steps (st)
MIDI: displays pitch corresponding to the MIDI note number
Custom: displays custom data type
Native: defaults to floating point values

Custom Unitssymbol

Sets the units to be used with the 'Custom' unit style (see "Unit Style", above). Custom unit strings may be simple symbols (e.g. "Harmonic(s)"), in which case the parameter's value will be displayed in its 'Native' display mode, followed by the symbol (e.g. "12 Harmonic(s)" for an Int-typed parameter or "12.54 Harmonic(s)" for a Float-typed parameter). For additional control over the numerical component displayed, a sprintf-style string may be used (e.g. "%0.2f Bogon(s)", which would display a value such as ".87 Bogons").

Exponentfloat

When set to a value other than 1., the parameter's input and output values will be exponentially scaled according to the factor entered in this column.

Stepsint

The number of steps available between the minimum and maximum values of a parameter. For instance, if the parameter has a range from 0.-64., with Steps set to 4, the user can only set the parameter to 0, 21.33, 42.66 and 64.

Parameter Visibilityint

For automatable parameters (Int, Float, Enum), 'Stored Only' disables automation, although parameter values are stored in presets. 'Hidden' causes the parameter's value to be ignored when storing and recalling data. Non-automatable parameters (Blob) are 'Stored Only' by default, and can be set to 'Hidden', if desired.

Update Limit (ms)int

Speed limits values triggered by automation.

Defer Automation Outputint

Defers values triggered by automation.

Messages

bang

Outputs the typed or stored contents of the textedit object's buffer.

int

Sets the contents of the textedit object's buffer while causing no output.

Arguments:
  • input [int]

float

Sets the contents of the textedit object's buffer while causing no output.

Arguments:
  • input [float]

list

Sets the contents of the textedit object's buffer while causing no output as long as the list is comprised of numbers, otherwise, an error message is displayed.

Arguments:
  • input [list]

(mouse)

Clicking with the mouse on the textedit object (when the patcher window is locked) will cause the textedit object to send either the letter or word selected out its right outlet depending on the setting of the click mode (see the clickmode message).

(typing)

When the textedit object is highlighted, typing enters text into the text display area and modifies its buffer, unless the object is set to read-only mode (see the readonly message). The ASCII value of the character typed is sent out the middle outlet.

(drag)

When a file is dragged onto the textedit object, the full file name will be added, replacing any text that was previously typed. Holding down the option/command (Mac), or option/alt (Windows), keys when releasing the mouse will append the file name to the existing text rather than replace it. If the file is in Max's search path, only the file name will be added. If the file is not in Max's search path, the entire file path will be added.

append

The word append , followed by a message, will append the message to the textedit object's buffer without causing any output.

Arguments:
  • input [list]

clear

Erases the contents of the textedit object's buffer.

dictionary

The message dictionary , followed by a valid dictionary name, displays the contents of that dictionary in the textedit object, while causing no output. In order to set or append messages to textedit, the dictionary should begin with "mode" : "set" or "mode" : "append".

Arguments:
  • dict-name [symbol]

select

Causes all text (if any) to be highlighted and sets the object to be the target of keyboard events if the object is not in read-only mode.

set

The word set , followed by any message, sets the contents of the textedit object's buffer while causing no output.

Arguments:
  • input [list]

Output

symbol

Out left outlet: The currently stored contents of the textedit object's buffer preceded by the word text are output when the object receives a bang message. If the textedit message has been set to enter text on a carriage return using the keymode 1 message, a carriage return will also output the typed text and the buffer contents.

symbol

Out middle outlet: The ASCII value of the typed key.

symbol

Out right outlet: The word or letter in the textedit object's text box that the user has clicked on.

See Also

Name Description
dialog Open a dialog box
jit.cellblock Edit rows and columns of data
text Format messages as a text file