<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<control xmlns="http://www.sap.com/sap.ui.library.xsd">
    <name>Icon</name>
    <derived/>
    <author>SAP SE</author>
    <documentation>Icon uses embedded font instead of pixel image. Comparing to image, Icon is easily scalable, color can be altered live and various effects can be added using css.

A set of built in Icons is available and they can be fetched by calling sap.ui.core.IconPool.getIconURI and set this value to the src property on the Icon.</documentation>
    <since>1.11.1</since>
    <baseType>sap.ui.core/Control</baseType>
    <properties>
        <property name="src" type="sap.ui.core/URI" group="Data">
            <documentation>This property should be set by the return value of calling sap.ui.core.IconPool.getIconURI with an Icon name parameter and an optional collection parameter which is required when using application extended Icons. A list of standard FontIcon is available here.</documentation>
        </property>
        <property name="size" type="sap.ui.core/CSSSize" group="Dimension">
            <documentation>Since Icon uses font, this property will be applied to the css font-size property on the rendered DOM element.</documentation>
        </property>
        <property name="color" type="sap.ui.core/string" group="Appearance">
            <documentation>The color of the Icon. If color is not defined here, the Icon inherits the color from its DOM parent.

The property can be set with {@link sap.ui.core.CSSColor CSS Color} or {@link sap.ui.core.IconColor Semantic Icon Color}.</documentation>
        </property>
        <property name="hoverColor" type="sap.ui.core/string" group="Appearance">
            <documentation>This color is shown when icon is hovered. This property has no visual effect when run on mobile device.

The property can be set with {@link sap.ui.core.CSSColor CSS Color} or {@link sap.ui.core.IconColor Semantic Icon Color}.</documentation>
        </property>
        <property name="activeColor" type="sap.ui.core/string" group="Appearance">
            <documentation>This color is shown when icon is pressed/activated by the user.

The property can be set with {@link sap.ui.core.CSSColor CSS Color} or {@link sap.ui.core.IconColor Semantic Icon Color}.</documentation>
        </property>
        <property name="width" type="sap.ui.core/CSSSize" group="Dimension">
            <documentation>This is the width of the DOM element which contains the Icon. Setting this property doesn't affect the size of the font. If you want to make the font bigger, increase the size property.</documentation>
        </property>
        <property name="height" type="sap.ui.core/CSSSize" group="Dimension">
            <documentation>This is the height of the DOM element which contains the Icon. Setting this property doesn't affect the size of the font. If you want to make the font bigger, increase the size property.</documentation>
        </property>
        <property name="backgroundColor" type="sap.ui.core/string" group="Appearance">
            <documentation>Background color of the Icon in normal state.

The property can be set with {@link sap.ui.core.CSSColor CSS Color} or {@link sap.ui.core.IconColor Semantic Icon Color}.</documentation>
        </property>
        <property name="hoverBackgroundColor" type="sap.ui.core/string" group="Appearance">
            <documentation>Background color for Icon in hover state. This property has no visual effect when run on mobile device.

The property can be set with {@link sap.ui.core.CSSColor CSS Color} or {@link sap.ui.core.IconColor Semantic Icon Color}.</documentation>
        </property>
        <property name="activeBackgroundColor" type="sap.ui.core/string" group="Appearance">
            <documentation>Background color for Icon in active state.

The property can be set with {@link sap.ui.core.CSSColor CSS Color} or {@link sap.ui.core.IconColor Semantic Icon Color}.</documentation>
        </property>
        <property name="decorative" type="sap.ui.core/boolean" defaultValue="true" group="Accessibility" since="1.16.4">
            <documentation>A decorative icon is included for design reasons. Accessibility tools will ignore decorative icons. Tab stop isn't affected by this property anymore and it's now controlled by the existence of press event handler and the noTabStop property.</documentation>
        </property>
        <property name="useIconTooltip" type="sap.ui.core/boolean" defaultValue="true" group="Accessibility" since="1.30.0">
            <documentation>Decides whether a default Icon tooltip should be used if no tooltip is set.</documentation>
        </property>
        <property name="alt" type="sap.ui.core/string" group="Accessibility" since="1.30.0">
            <documentation>This defines the alternative text which is used for outputting the aria-label attribute on the DOM.</documentation>
        </property>
        <property name="noTabStop" type="sap.ui.core/boolean" defaultValue="false" group="Accessibility" since="1.30.1">
            <documentation>Defines whether the tab stop of icon is controlled by the existence of press event handler. When it's set to false, Icon control has tab stop when press event handler is attached.
If it's set to true, Icon control never has tab stop no matter whether press event handler exists or not.</documentation>
        </property>
    </properties>
    <events>
        <event name="press" allowPreventDefault="false">
            <documentation>This event is fired when icon is pressed/activated by the user. When a handler is attached to this event, the Icon gets tab stop. If you want to disable this behavior, set the noTabStop property to true.</documentation>
        </event>
    </events>
    <aggregations>
        <aggregation name="_invisibleText" type="sap.ui.core/InvisibleText" cardinality="0..1" visibility="hidden">
            <documentation>Hidden aggregation for holding the InvisibleText instance which is used for outputing the text labeling the control</documentation>
        </aggregation>
    </aggregations>
    <associations>
        <association name="ariaLabelledBy" type="sap.ui.core/Control" cardinality="0..n">
            <documentation>Association to controls / ids which label this control (see WAI-ARIA attribute aria-labelledby).</documentation>
        </association>
    </associations>
</control>
