Kodi Development  20.0
for Binary and Script based Add-Ons
Toggle button control

Table of Contents

A toggle on/off button that can take 2 different states.

The toggle button control is used for creating buttons that have 2 states. You can choose the position, size, and look of the button. When the user clicks on the toggle button, the state will change, toggling the extra textures (alttexturefocus and alttexturenofocus). Used for controls where two states are needed (pushed in and pushed out for instance).


Example

<control type="togglebutton" id="25">
<description>My first togglebutton control</description>
<posx>80</posx>
<posy>60</posy>
<width>250</width>
<height>200</height>
<visible>true</visible>
<colordiffuse>FFFFFFFF</colordiffuse>
<texturefocus>myfocustexture.png</texturefocus>
<texturenofocus>mynormaltexture.png</texturenofocus>
<alttexturefocus>myselectedTexture.png</alttexturefocus>
<alttexturenofocus>myselectedTexture_nf.png</alttexturenofocus>
<usealttexture>!Player.IsPaused</usealttexture>
<label>29</label>
<altlabel>29</altlabel>
<font>font12</font>
<textcolor>FFFFFFFF</textcolor>
<disabledcolor>80FFFFFF</disabledcolor>
<align>left</align>
<aligny>center</aligny>
<textoffsetx>4</textoffsetx>
<textoffsety>5</textoffsety>
<pulseonselect>false</pulseonselect>
<onclick>Player.Pause</onclick>
<onfocus>-</onfocus>
<onunfocus>-</onunfocus>
<onup>2</onup>
<ondown>3</ondown>
<onleft>1</onleft>
<onright>1</onright>
<wrapmultiline>false</wrapmultiline>
</control>

Available tags

In addition to the Default Control Tags the following tags are available. Note that each tag is lower case only. This is important, as xml tags are case-sensitive.

Tag Description
texturefocus Specifies the image file which should be displayed when the button has focus. See here for additional information about texture tags.
texturenofocus Specifies the image file which should be displayed when the button does not have focus.
alttexturefocus Specifies the image file which should be displayed when the toggle button is in it's selected state. This texture replaces the <texturefocus> texture when the toggle button is selected.
alttexturenofocus Specifies the image file which should be displayed when the button is in it's selected state but unfocused.
usealttexture Specifies the conditions under which the Alternative Textures should be shown. Some toggle button controls are handled by Kodi internally, but any extra ones that the skinner has can be controlled using this tag. See here for more information.
label The label used on the button. It can be a link into strings.po, or an actual text label.
altlabel The alternate label used on the button. It can be a link into strings.po, or an actual text label.
altclick The alternate action to perform when the button is pressed. Should be a built in function. See here for more information. You may have more than one <altclick> tag, and they'll be executed in sequence.
font Font used for the button label. From fonts.xml.
textcolor Color used for displaying the button label. In AARRGGBB hex format, or a name from the colour theme.
disabledcolor Color used for the button label if the button is disabled. In AARRGGBB hex format, or a name from the colour theme.
shadowcolor Specifies the color of the drop shadow on the text. In AARRGGBB hex format, or a name from the colour theme.
align Label horizontal alignment on the button. Defaults to left, can also be center or right.
aligny Label vertical alignment on the button. Defaults to top, can also be center.
textoffsetx Amount to offset the label from the left (or right) edge of the button when using left or right alignment.
textoffsety Amount to offset the label from the top edge of the button when using top alignment.
textwidth Will truncate any text that's too long.
onclick Specifies the action to perform when the button is pressed. Should be a built in function. See here for more information. You may have more than one <onclick> tag, and they'll be executed in sequence.
onfocus Specifies the action to perform when the button is focused. Should be a built in function. The action is performed after any focus animations have completed. See here for more information.
onunfocus Specifies the action to perform when the button loses focus. Should be a built in function.
wrapmultiline Allows wrapping on the label across multiple lines. Defaults to false.

See also

Development: