Label Component - Maple Help

DocumentTools[Components]

 Label
 generate XML for a Label Component

 Calling Sequence Label( caption, opts )

Parameters

 caption - (optional) string:="Label"; the caption on the label opts - (optional) ; one or more keyword options as described below

Options

 • enabled : truefalse; Indicates whether the component is enabled. The default is true. If enabled is false then the inserted component is grayed out and interaction with it cannot be initiated.
 • fillcolor : {list(nonnegint),symbol,string}:=[255,255,255] ; Specifies the background color of the component. The passed value can be either a named color or a list of three integers each between 0 and 255. A list of nonnegative integers is interpreted as RGB values in a 24bit 3-channel color space. The default value is [255,255,255] which corresponds to white.
 • fontcolor : {list(nonnegint),symbol,string}:=[0,0,0] ; Specifies the font color of the component. The passed value can be either a named color or a list of three integers each between 0 and 255. A list of nonnegative integers is interpreted as RGB values in a 24bit 3-channel color space. The default value is [0,0,0] which corresponds to black.
 • height : posint; The height in pixels of the component.
 • identity : {name,string}; The reference name of the component.
 • image : {string,Matrix,Array}; Image to be displayed on the component, specified as either the name of an external image file or a Matrix or Array as recognized by commands in the ImageTools package. The caption parameter and the image option are mutually exclusive; only one can be supplied.
 • tooltip : string; The text that appears when the mouse pointer hovers over the component. The default is the empty string (no tooltip).
 • visible : truefalse; Indicates whether the component is visible. The default is true.
 • width : posint; The width in pixels of the component.

Description

 • The Label command in the Component Constructors package returns an XML function call which represents a Label Component.
 • The generated XML can be used with the results of commands in the Layout Constructors package to create an entire Worksheet or Document in XML form. Such a representation of a Worksheet or Document can be inserted into the current document using the InsertContent command.

Examples

 > $\mathrm{with}\left(\mathrm{DocumentTools}\right):$
 > $\mathrm{with}\left(\mathrm{DocumentTools}:-\mathrm{Layout}\right):$
 > $\mathrm{with}\left(\mathrm{DocumentTools}:-\mathrm{Components}\right):$

Executing the Label command produces a function call.

 > $S≔\mathrm{Label}\left("My Label",\mathrm{identity}="Label0"\right)$
 ${S}{≔}{\mathrm{_XML_EC-Label}}{}\left({"id"}{=}{"Label0"}{,}{"caption"}{=}{"My Label"}{,}{"enabled"}{=}{"true"}{,}{"visible"}{=}{"true"}{,}{"fillcolor"}{=}{"\left[255,255,255\right]"}{,}{"fontcolor"}{=}{"\left[0,0,0\right]"}\right)$ (1)

By using commands from the Layout Constructors package a nested function call can be produced which represents a worksheet.

 > $\mathrm{xml}≔\mathrm{Worksheet}\left(\mathrm{Group}\left(\mathrm{Input}\left(\mathrm{Textfield}\left(S\right)\right)\right)\right):$

That XML representation of a worksheet can be inserted directly.

 > $\mathrm{InsertContent}\left(\mathrm{xml}\right):$

 > $S≔\mathrm{Label}\left("New Label",\mathrm{identity}="Label0",\mathrm{tooltip}="new label"\right):$
 > $\mathrm{xml}≔\mathrm{Worksheet}\left(\mathrm{Group}\left(\mathrm{Input}\left(\mathrm{Textfield}\left(S\right)\right)\right)\right):$

The previous example's call to the InsertContent command inserted a component with identity "Label0", which still exists in this worksheet. Inserting additional content whose input contains another component with that same identity "Label0" incurs a substitution of the input identity in order to avoid a conflict with the identity of the existing component.

The return value of the following call to InsertContent is a table which can be used to reference the substituted identity of the inserted component.

 > $\mathrm{lookup}≔\mathrm{InsertContent}\left(\mathrm{xml},\mathrm{output}=\mathrm{table}\right)$
 ${\mathrm{lookup}}{≔}{table}{}\left(\left[{"Label0"}{=}{"Label1"}\right]\right)$ (2)

 > $\mathrm{lookup}\left["Label0"\right]$
 ${"Label1"}$ (3)
 > $\mathrm{GetProperty}\left(\mathrm{lookup}\left["Label0"\right],\mathrm{caption}\right)$
 ${"New Label"}$ (4)
 > $\mathrm{img}≔\mathrm{cat}\left(\mathrm{kernelopts}\left(\mathrm{datadir}\right),"/images/antennas.jpg"\right):$
 > $L≔\mathrm{Label}\left(\mathrm{image}=\mathrm{img},\mathrm{identity}="Label17",\mathrm{width}=120,\mathrm{height}=120\right):$
 > $\mathrm{InsertContent}\left(\mathrm{Worksheet}\left(\mathrm{Group}\left(\mathrm{Input}\left(\mathrm{Textfield}\left(L\right)\right)\right)\right)\right):$

 > $\mathrm{img}≔\mathrm{Array}\left(1..60,1..40,1..3,\left(i,j,k\right)↦\mathrm{if}\left(k=3,\frac{j}{40},0\right),\mathrm{datatype}=\mathrm{float}\left[8\right],\mathrm{order}=\mathrm{C_order}\right):$
 > $L≔\mathrm{Label}\left(\mathrm{image}=\mathrm{img},\mathrm{identity}="Label17"\right):$
 > $\mathrm{InsertContent}\left(\mathrm{Worksheet}\left(\mathrm{Group}\left(\mathrm{Input}\left(\mathrm{Textfield}\left(L\right)\right)\right)\right)\right):$

 > $L≔\mathrm{Label}\left(\mathrm{image}=\mathrm{img},\mathrm{identity}="Label17",\mathrm{width}=70,\mathrm{height}=20\right):$
 > $\mathrm{InsertContent}\left(\mathrm{Worksheet}\left(\mathrm{Group}\left(\mathrm{Input}\left(\mathrm{Textfield}\left(L\right)\right)\right)\right)\right):$

 > $S≔\mathrm{Label}\left("My Label",\mathrm{fillcolor}="LightBlue",\mathrm{fontcolor}="Blue",\mathrm{width}=12\right):$$\mathrm{InsertContent}\left(\mathrm{Worksheet}\left(\mathrm{Group}\left(\mathrm{Input}\left(\mathrm{Textfield}\left(S\right)\right)\right)\right)\right):$

Compatibility

 • The DocumentTools:-Components:-Label command was introduced in Maple 2015.