.. index:: pair: page; CSS Specification .. _doxid-cssspecification: CSS Specification ================= .. _doxid-cssspecification_1autotoc_md51: Introduction ~~~~~~~~~~~~ eepp CSS custom implementation is heavily based on the official `CSS standard `__. This document will try to explain the shared features and the current differences with the CSS specification. Since CSS is widely used and documented, every feature that it's shared with the CSS standard will be directly linked to the Mozilla CSS documentation. If you are totally new to CSS please go the `Mozilla CSS portal `__. .. _doxid-cssspecification_1autotoc_md52: Relevant differences with CSS standard ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * Layout properties are not supported (display, float, etc), since eepp layout system differs from the HTML+CSS specification (design decision). * `inheritance `__ is not supported, except for `CSS custom properties `__ (design decision). * `Attribute selector `__ is not supported (probably will not be supported in the near future, since collides with some implementation decisions). * CSS relative paths start from the process current working directory instead the relative path from the CSS file. * eepp CSS supports alternative path methods besides paths (resource locator to previously loaded resources by the process). * eepp CSS supports `Device-independent pixel `__ unit ``dp``. * CSS files should be always UTF-8 encoded. .. _doxid-cssspecification_1autotoc_md53: CSS Selectors ~~~~~~~~~~~~~ CSS selectors define the elements to which a set of CSS rules apply. .. _doxid-cssspecification_1autotoc_md55: Basic selectors --------------- .. _doxid-cssspecification_1autotoc_md56: Universal Selector ++++++++++++++++++ `Universal selector `__ selects all elements. Optionally, it may be restricted to a specific namespace or to all namespaces. Syntax: ``* ns|* *|*`` Example: ``*`` will match all the elements of the document. .. _doxid-cssspecification_1autotoc_md58: Type Selector +++++++++++++ `Type selector `__ selects all elements that have the given node name. Syntax: ``elementname`` Example: ``widget`` will match any ```` element. .. _doxid-cssspecification_1autotoc_md60: Class Selector ++++++++++++++ `Class selector `__ selects all elements that have the given class attribute. Syntax: ``.classname`` Example: ``.index`` will match any element that has a class of "index". .. _doxid-cssspecification_1autotoc_md62: ID Selector +++++++++++ `ID selector `__ selects an element based on the value of its id attribute. There should be only one element with a given ID in a document. Syntax: ``#idname`` Example: ``#toc`` will match the element that has the ID "toc". .. _doxid-cssspecification_1autotoc_md64: Grouping selectors ------------------ .. _doxid-cssspecification_1autotoc_md65: Selector List +++++++++++++ The `selector list `__ ``,`` is a grouping method, it selects all the matching nodes. Syntax: ``A, B`` Example: ``widget, image`` will match both ```` and ```` elements. .. _doxid-cssspecification_1autotoc_md67: Combinators ----------- .. _doxid-cssspecification_1autotoc_md68: Descendant combinator +++++++++++++++++++++ The `descendant combinator `__ " " (space) combinator selects nodes that are descendants of the first element. Syntax: ``A B`` Example: ``LinearLayout image`` will match all ```` elements that are inside a ```` element. .. _doxid-cssspecification_1autotoc_md69: Child combinator ++++++++++++++++ The `child combinator `__ ``>`` selects nodes that are direct children of the first element. Syntax: ``A > B`` Example: ``LinearLayout > listbox`` will match all ```` elements that are nested directly inside a ```` element. .. _doxid-cssspecification_1autotoc_md70: General sibling combinator ++++++++++++++++++++++++++ The `general sibling combinator `__ ``~`` selects siblings. This means that the second element follows the first (though not necessarily immediately), and both share the same parent. Syntax: ``A ~ B`` Example: ``TextView ~ image`` will match all ```` elements that follow a ````, immediately or not. .. _doxid-cssspecification_1autotoc_md71: Adjacent sibling combinator +++++++++++++++++++++++++++ The `adjacent sibling combinator `__ ``+`` selects adjacent siblings. This means that the second element directly follows the first, and both share the same parent. Syntax: ``A + B`` Example: ``TextView + image`` will match all ```` elements that directly follow an ````. .. _doxid-cssspecification_1autotoc_md73: CSS Properties ~~~~~~~~~~~~~~ eepp CSS properties can be categorized in two big groups: CSS standard properties and eepp CSS properties. **Definitions:** * Property names are *case insensitive*. * Some properties have aliases. * All property names that contain dashes (``-``), have aliases without those dashes. * For example: ``animation-delay`` also is ``animationDelay``. * Other aliases will be clarified in the properties documentation. * All properties can be used as attributes of the XML node. * XML attributes are treated as inline CSS styling. * For example: * Something like: * ``LinearLayout { layout-width: match_parent; layout_height: match_parent; orientation: vertical; }`` * is similar to (but not equivalent, since specificity of inline CSS is higher): * ```` * CSS standard properties directly linked to the Mozilla docs are fully supported, otherwise a clarification will appear. * *Applicable to* will link to the :ref:`EE::UI::UIWidget ` that can use that property, and betweeen parenthesis is the CSS element name. .. _doxid-cssspecification_1autotoc_md75: animation-delay --------------- Read `animation-delay `__ docs. .. _doxid-cssspecification_1autotoc_md77: animation-direction ------------------- Read `animation-direction `__ documenation. .. _doxid-cssspecification_1autotoc_md79: animation-duration ------------------ Read `animation-duration `__ documenation. .. _doxid-cssspecification_1autotoc_md81: animation-fill-mode ------------------- Read `animation-fill-mode `__ documentation. .. _doxid-cssspecification_1autotoc_md83: animation-iteration-count ------------------------- Read `animation-iteration-count `__ documentation. .. _doxid-cssspecification_1autotoc_md85: animation-name -------------- Read `animation-name `__ documentation. .. _doxid-cssspecification_1autotoc_md86: animation-play-state -------------------- Read `animation-play-state `__ documentation. .. _doxid-cssspecification_1autotoc_md88: animation-timing-function ------------------------- Read `animation-timing-function `__ documentation. Timing function names are custom, and not the same as the standard, but ``cubic-bezier`` will be added soon. Current timing functions supported: linear, quadratic-in, quadratic-out, quadratic-in-out, sine-in, sine-out, sine-in-out, exponential-in, exponential-out, exponential-in-out, quartic-in, quartic-out, quartic-in-out, circular-in, circular-out, circular-in-out, cubic-in, cubic-out, cubic-in-out, back-in, back-out, back-in-out, bounce-in, bounce-out, bounce-in-out, elastic-in, elastic-out, elastic-in-out, none. .. _doxid-cssspecification_1autotoc_md90: allow-editing ------------- Enable or disable editing on input elements. * Applicable to: :ref:`EE::UI::UITextEdit ` (TextEdit), :ref:`EE::UI::UITextInput ` (TextInput) * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``true`` .. _doxid-cssspecification_1autotoc_md92: allow-float ----------- On a input that only accept numbers, enables floating point numbers. * Applicable to: :ref:`EE::UI::UITextInput ` (TextInput), :ref:`EE::UI::UISpinBox ` (SpinBox::input) * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``false`` .. _doxid-cssspecification_1autotoc_md94: animation-speed --------------- Sets the loader speed animation. * Applicable to: :ref:`EE::UI::UILoader ` (Loader) * Data Type: `number <#number-data-type>`__ * Default value: ``0.5`` .. _doxid-cssspecification_1autotoc_md96: arc-start-angle --------------- The angle value where a loader progress starts rendering. * Applicable to: :ref:`EE::UI::UILoader ` (Loader) * Data Type: `number <#number-data-type>`__ * Default value: ``0`` .. _doxid-cssspecification_1autotoc_md98: background-color ---------------- Read `background-color `__ documentation. .. _doxid-cssspecification_1autotoc_md100: background-expand ----------------- Sets if the element skin background should be expanded to the element dimensions. * Applicable to: :ref:`EE::UI::UISlider ` (Slider), :ref:`EE::UI::UIScrollBar ` (ScrollBar) * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``false`` .. _doxid-cssspecification_1autotoc_md102: background-image ---------------- Read `background-image `__ documentation. * Applicable to: Any element * Data Type: `resource-path <#resource-path-data-type>`__ * Default value: ``none`` .. _doxid-cssspecification_1autotoc_md104: background-position-x --------------------- Read `background-position-x `__ documentation. .. _doxid-cssspecification_1autotoc_md106: background-position-y --------------------- Read `background-position-y `__ documentation. .. _doxid-cssspecification_1autotoc_md108: backtround-repeat ----------------- Read `background-repeat `__ documentation. ``space`` and ``round`` values are not supported yet. * Default value: ``no-repeat`` (this is different from the CSS standard) .. _doxid-cssspecification_1autotoc_md110: background-tint --------------- Sets the tint color of the background image. * Applicable to: Any element * Data Type: `color <#color-data-type>`__ * Default value: ``white`` .. _doxid-cssspecification_1autotoc_md112: background-size --------------- Read `background-size `__ documentation. .. _doxid-cssspecification_1autotoc_md114: blend-mode ---------- Sets the blend mode to the widget. * Applicable to: Any element * Data Type: `string-list <#string-list-data-type>`__ * Value List: * ``add`` * ``alpha`` * ``multiply`` * ``none`` * Default value: ``alpha`` .. _doxid-cssspecification_1autotoc_md115: border-bottom-color ------------------- Read `border-bottom-color `__ documentation. .. _doxid-cssspecification_1autotoc_md117: border-bottom-left-radius ------------------------- Read `border-bottom-left-radius `__ documentation. .. _doxid-cssspecification_1autotoc_md119: border-bottom-right-radius -------------------------- Read `border-bottom-right-radius `__ documentation. .. _doxid-cssspecification_1autotoc_md121: border-bottom-width ------------------- Read `border-bottom-width `__ documentation. .. _doxid-cssspecification_1autotoc_md123: border-left-color ----------------- Read `border-left-color `__ documentation. .. _doxid-cssspecification_1autotoc_md125: border-left-width ----------------- Read `border-left-width `__ documentation. .. _doxid-cssspecification_1autotoc_md127: border-right-color ------------------ Read `border-right-color `__ documentation. .. _doxid-cssspecification_1autotoc_md129: border-right-width ------------------ Read `border-right-width `__ documentation. .. _doxid-cssspecification_1autotoc_md131: border-top-color ---------------- Read `border-top-color `__ documentation. .. _doxid-cssspecification_1autotoc_md133: border-top-left-radius ---------------------- Read `border-top-left-radius `__ documentation. .. _doxid-cssspecification_1autotoc_md135: border-top-right-radius ----------------------- Read `border-top-right-radius `__ documentation. .. _doxid-cssspecification_1autotoc_md137: border-top-width ---------------- Read `border-top-width `__ documentation. .. _doxid-cssspecification_1autotoc_md139: border-type ----------- Defines where the border box is drawn. * Applicable to: Any element * Data Type: `string-list <#string-list-data-type>`__ * Value List: * ``inside`` : The border will be drawn inside the content box. * ``outside`` : The border will be drawn outside the content box. * ``outline`` : The border will be drawn in the middle point between the content box and the border width. * Default value: ``inside`` .. _doxid-cssspecification_1autotoc_md141: change-page-percent ------------------- Sets the percentage of scroll of a page that triggers a page change in a ViewPager. * Applicable to: :ref:`EE::UI::UIViewPager ` (ViewPager). * Data Type: `number <#number-data-type>`__ (normalized between ``0`` and ``1``) * Default value: ``0.33`` .. _doxid-cssspecification_1autotoc_md143: checked ------- Sets as checkbox as checked * Applicable to: :ref:`EE::UI::UICheckBox ` (CheckBox). * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``false`` .. _doxid-cssspecification_1autotoc_md145: check-mode ---------- Checkboxs have two possible interaction modes for changing its checked state. * Applicable to: :ref:`EE::UI::UICheckBox ` (CheckBox). * Data Type: `string-list <#string-list-data-type>`__ * Value List: * ``element`` : Checked state will change by clicking anywhere in the widget (clicking over text or icon) * ``button`` : Checked state will only change by clicking over the icon * Default value: ``element`` .. _doxid-cssspecification_1autotoc_md147: click-step ---------- For any element that has a stepped value change, this sets the step variation for a click to the element. * Applicable to: :ref:`EE::UI::UIScrollBar ` (ScrollBar), :ref:`EE::UI::UISlider ` (Slider), :ref:`EE::UI::UISpinBox ` (SpinBox). * Data Type: `number <#number-data-type>`__ * Default value: * ScrollBar: ``0.1`` * Slider: ``0.1`` * SpinBox: ``1`` .. _doxid-cssspecification_1autotoc_md149: clip ---- Specifies how the clipping is applied to the element if clip is enabled. * Applicable to: Any element * Data Type: `string-list <#string-list-data-type>`__ * Value List: * ``none`` : No clipping is applied. * ``content-box`` : Clips the content box of the element (means the whole box). * ``padding-box`` : Clips the padding box of the element (the whole box minus the padding). * ``border-box`` : Clips the border box of the element (the content box plus the border). * Default Value: Varies for each widget/element. .. _doxid-cssspecification_1autotoc_md151: color ----- Read `color `__ documentation. .. _doxid-cssspecification_1autotoc_md153: column-mode ----------- Sets the column mode of a grid layout. The column mode defines how the size of the column of a grid layout is measured. * Applicable to: :ref:`EE::UI::UIGridLayout ` (GridLayout) * Data Type: `string-list <#string-list-data-type>`__ * Value List: * ``size`` : The column width of each grid child will be defined with a fixed width based on the value of the `column-width <#column-width>`__ length. * ``weight`` : The column width of each grid child will be calculated as a normalized percentage of the total grid width using the `column-weight <#column-weight>`__ value. * Default value: ``weight`` .. _doxid-cssspecification_1autotoc_md155: column-margin ------------- Sets the horizontal separation between each element in the grid layout. * Applicable to: :ref:`EE::UI::UIGridLayout ` (GridLayout) * Data Type: `length <#length-data-type>`__ * Default value: ``0dp`` .. _doxid-cssspecification_1autotoc_md157: column-weight ------------- Sets the percentage width of the child elements of a grid layout. `column-mode <#column-mode>`__ must be ``weight`` in order to work. * Applicable to: :ref:`EE::UI::UIGridLayout ` (GridLayout) * Data Type: `number <#number-data-type>`__ (normalized between ``0`` and ``1``) * Default value: ``0.25`` .. _doxid-cssspecification_1autotoc_md159: column-width ------------ Sets the width of the child elements of a grid layout. * Applicable to: :ref:`EE::UI::UIGridLayout ` (GridLayout) * Data Type: `length <#length-data-type>`__ * Default value: ``0`` .. _doxid-cssspecification_1autotoc_md161: cursor ------ Read `cursor `__ documentation. Custom cursors not yet supported (but supported by the engine, only not implemented in the CSS side). .. _doxid-cssspecification_1autotoc_md163: display-percent --------------- Enables/disables displaying the percentage of progress in the progress bar. * Applicable to: :ref:`EE::UI::UIProgressBar ` (ProgressBar) * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``false`` .. _doxid-cssspecification_1autotoc_md165: drag-resistance --------------- Sets the amount of drag that is needed to start dragging an element. * Applicable to: :ref:`EE::UI::UIViewPager ` (ViewPager) * Data Type: `length <#length-data-type>`__ * Default value: ``8dp`` .. _doxid-cssspecification_1autotoc_md167: droppable-hovering-color ------------------------ Sets the foreground color to highlight the current dragged element that its is hovering an element that accepts a drop of the dragged element. * Applicatable to: :ref:`EE::UI::UITabWidget ` (TabWidget), :ref:`EE::UI::UIRoot ` (:root) * Data Type: `color <#color-data-type>`__ * Default value: ``#FFFFFF20`` .. _doxid-cssspecification_1autotoc_md169: enabled ------- Sets if the element is enabled * Applicable to: Any element * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``true`` .. _doxid-cssspecification_1autotoc_md171: font-family ----------- Read `font-family `__ documentation. .. _doxid-cssspecification_1autotoc_md173: font-size --------- Read `font-size `__ documentation. .. _doxid-cssspecification_1autotoc_md175: font-style ---------- Read `font-style `__ documentation. .. _doxid-cssspecification_1autotoc_md177: fill-color ---------- Sets the fill color of a element. * Applicable to: :ref:`EE::UI::UILoader ` (Loader) * Data Type: `color <#color-data-type>`__ * Default value: ``white`` .. _doxid-cssspecification_1autotoc_md179: flags ----- Allows to set some very specific flags to the element. Multiple flags can be set, flags are separated by ``|``. * Applicable to: Any element * Data Type: `string-list <#string-list-data-type>`__ * Value List: * ``autosize`` : This flag allows the widget/element to resize itself to a minimum size that allows the widget to be fully visible. * ``clip`` : Enables clipping of the element box. * ``multiselect`` : Enables multiple selection on elements that support selection. :ref:`EE::UI::UIListBox ` (ListBox) for the moment. * ``autopadding`` : Enables the element to calculate the padding based on the skin size. * ``reportsizechangetochilds`` : When enabled the element will emmit a event (``OnParentSizeChange``) to its childs reporting the size change of the parent. * Default value: *No value* .. _doxid-cssspecification_1autotoc_md181: foreground-color ---------------- Same as `background-color <#background-color>`__ but for the foreground. .. _doxid-cssspecification_1autotoc_md183: foreground-image ---------------- Same as `background-image <#background-image>`__ but for the foreground. * Applicable to: Any element * Data Type: `resource-path <#resource-path-data-type>`__ * Default value: ``none`` .. _doxid-cssspecification_1autotoc_md185: foreground-position-x --------------------- Same as `background-position-x <#background-position-x>`__ but for the foreground. .. _doxid-cssspecification_1autotoc_md187: foreground-position-y --------------------- Same as `background-position-y <#background-position-y>`__ but for the foreground. .. _doxid-cssspecification_1autotoc_md189: foreground-repeat ----------------- Same as `background-repeat <#background-repeat>`__ but for the foreground. .. _doxid-cssspecification_1autotoc_md191: foreground-size --------------- Same as `background-size <#background-size>`__ but for the foreground. .. _doxid-cssspecification_1autotoc_md193: foreground-tint --------------- Sets the tint color of the foreground image. * Applicable to: Any element * Data Type: `color <#color-data-type>`__ * Default value: ``white`` .. _doxid-cssspecification_1autotoc_md195: gravity ------- Sets the horizontal and vertical align of the inner elements/contents of a widget (for example the text on a TextView). Vertical and horizontal can be set by using ``|`` as a separator of each rule. * Applicable to: Any element. This applies at the :ref:`EE::UI::UIWidget ` (Widget) level, the base element of all widgets. But every widget has it's own behaviour, based on it's own content. Some may not do anything. * Data Type: `string-list <#string-list-data-type>`__ * Value List: * ``left`` * ``right`` * ``center_horizontal`` * ``top`` * ``bottom`` * ``center_vertical`` * ``center`` : shorthand of ``center_horizontal|center_vertical`` * Default value: Varies on each widget implementation. * Syntax: .. ref-code-block:: cpp gravity: center; gravity: left; gravity: left|top; gravity: center_horizontal|bottom; .. _doxid-cssspecification_1autotoc_md197: gravity-owner ------------- Widgets elements can inform that own childs position using a special flag on its implementation (UI_OWNS_CHILDS_POSITION). Sometimes some layouts may need to override the parent behavior that uses that flag. This flag will let the layout manage his gravity against its parent in all cases. * Applicable to: Any layout element. * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``false`` .. _doxid-cssspecification_1autotoc_md199: half-slider ----------- Defines how the slider widget should set its movement limits against the slider. With ``half-slider`` enabled the button will start and end from its center (and not its border). * Applicable to: :ref:`EE::UI::UISlider ` (Slider) * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``false`` .. _doxid-cssspecification_1autotoc_md201: hint ---- Sets the hint text of an input. This is the equivalen of ``placeholder`` in HTML. Usually this property will not be set in the CSS file but in the XML as an attribute or from the code implementation, but it's available as an option. * Applicable to: :ref:`EE::UI::UITextInput ` (TextInput) * Data Type: `string <#string-data-type>`__ * Default value: *No value* .. _doxid-cssspecification_1autotoc_md203: hint-color ---------- Sets the hint font color. * Applicable to: :ref:`EE::UI::UITextInput ` (TextInput) * Data Type: `color <#color-data-type>`__ * Default value: ``white`` .. _doxid-cssspecification_1autotoc_md205: hint-display ------------ Sets the hint display mode. * Applicable to: :ref:`EE::UI::UITextInput ` (TextInput) * Data Type: `string-list <#string-list-data-type>`__ * Value List: * ``always`` : Always visible * ``focus`` : Visible on focus * Default value: ``always`` .. _doxid-cssspecification_1autotoc_md207: hint-font-family ---------------- Sets the hint font family. * Applicable to: :ref:`EE::UI::UITextInput ` (TextInput) * Data Type: `string <#string-data-type>`__ * Default value: *No value* .. _doxid-cssspecification_1autotoc_md209: hint-font-size -------------- Sets the hint font size. * Applicable to: :ref:`EE::UI::UITextInput ` (TextInput) * Data Type: `length <#length-data-type>`__ * Default value: ``12px`` .. _doxid-cssspecification_1autotoc_md211: hint-font-style --------------- Sets the hint font style. * Applicable to: :ref:`EE::UI::UITextInput ` (TextInput) * Data Type: `string-list <#string-list-data-type>`__ * Value List: * ``underline`` * ``bold`` * ``italic`` * ``strikethrough`` * ``shadow`` : Drops a shadow to the text. * Default value: *No value* .. _doxid-cssspecification_1autotoc_md213: hint-shadow-color ----------------- Sets the hint font shadow color. * Applicable to: :ref:`EE::UI::UITextInput ` (TextInput) * Data Type: `color <#color-data-type>`__ * Default value: ``#323232E6`` .. _doxid-cssspecification_1autotoc_md215: hint-stroke-color ----------------- Sets the hint font stroke (the outline) color. * Applicable to: :ref:`EE::UI::UITextInput ` (TextInput) * Data Type: `color <#color-data-type>`__ * Default value: ``black`` .. _doxid-cssspecification_1autotoc_md217: hint-shadow-offset ------------------ Sets the hint font shadow offset. * Applicable to: :ref:`EE::UI::UITextView ` (TextView) and any element that holds inside text or extends from a TextView. :ref:`EE::UI::UICheckBox ` (CheckBox), :ref:`EE::UI::UIRadioButton ` (RadioButton), :ref:`EE::UI::UITextInput ` (TextInput), :ref:`EE::UI::UIListBoxItem ` (ListBox::item), :ref:`EE::UI::UIDropDownList ` (DropDownList), :ref:`EE::UI::UITextInputPassword ` (TextInputPassword), :ref:`EE::UI::UIPushButton ` (PushButton), EE::UI::UIToolti (Tooltip) * Data Type: `vector2-number <#vector2-number-data-type>`__ * Default offset: ``1dp 1dp`` .. _doxid-cssspecification_1autotoc_md219: hint-stroke-width ----------------- Sets the hint font stroke (the outline) width. * Applicable to: :ref:`EE::UI::UITextInput ` (TextInput) * Data Type: `length <#length-data-type>`__ * Default value: ``0dp`` .. _doxid-cssspecification_1autotoc_md221: href ---- Specifies the link destination of an Anchor element * Applicable to: :ref:`EE::UI::UIAnchor ` (Anchor) * Data Type: `string <#string-data-type>`__ * Default value: ``0dp`` .. _doxid-cssspecification_1autotoc_md223: hscroll-mode ------------ Sets the horizontal scroll mode to any scrollable element. The mode defines the visibility of the horizontal scroll. * Applicable to: EE::UI::DropDownList (DropDownList), :ref:`EE::UI::UIListBox ` (ListBox), :ref:`EE::UI::UIScrollView ` (ScrollView), :ref:`EE::UI::UIWidgetTable ` (WidgetTable), :ref:`EE::UI::UITextEdit ` (TextEdit). * Data Type: `string-list <#string-list-data-type>`__ * Value List: * ``auto`` : The horizontal scrollbar will be visible only when needed. * ``on`` : The horizontal scrollbar will be always visible. * ``off`` : The horizontal scrollbar will be always hidden. * Default value: ``auto`` .. _doxid-cssspecification_1autotoc_md225: icon ---- Sets an icon to an element that support icons. * Applicable to: :ref:`EE::UI::UIImage ` (Image), :ref:`EE::UI::UIPushButton ` (PushButton), :ref:`EE::UI::UITab ` (Tab) * Data Type: `resource-path <#resource-path-data-type>`__ * Default value: *No value* .. _doxid-cssspecification_1autotoc_md227: indeterminate ------------- Enables/disables indeterminate mode for a loader. Indeterminate mode is used when the progress of the load can't be determined. * Applicable to: :ref:`EE::UI::UILoader ` (Loader) * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``true`` .. _doxid-cssspecification_1autotoc_md229: inner-widget-orientation ------------------------ PushButton can contain 3 widgets: the text (textbox), the icon, and a custom extra item. And with these 3 items does its own layouting. This property allows configuring the order in which these items are displayed/sorted inside the button. * Applicable to: :ref:`EE::UI::UIPushButton ` (PushButton) and any element that extends it: UIMenuItem, UISelectButton (SelectButton), UITableCell , UITableHeaderColumn. * Data Type: `string-list <#string-list-data-type>`__ * Value List (Widget is the custom widget): * ``widgeticontextbox`` : Widget | Icon | TextBox * ``widgettextboxicon`` : Widget | TextBox | Icon * ``icontextboxwidget`` : Icon | TextBox | Widget * ``iconwidgettextbox`` : Icon | Widget | TextBox * ``textboxiconwidget`` : TextBox | Icon | Widget * ``textboxwidgeticon`` : TextBox | Widget | Icon * Default value: ``widgeticontextbox`` .. _doxid-cssspecification_1autotoc_md231: layout-gravity -------------- The layout gravity defines how the element gravitates againts its parent (when possible). Gravity specifies how a component should be placed in its group of cells. Must be one or more (separated by ``|``) of the *value list* values. This behaves as the `android:layout_gravity `__ XML attribute (for those who are familiar with). * Applicable to: Any element child of a layout element * Data Type: `string-list <#string-list-data-type>`__ * Value List: * ``left`` : Push element to the left of its container. * ``right`` : Push element to the right of its container. * ``center_horizontal`` : Push element to the horizontal center of its container. * ``top`` : Push element to the top of its container. * ``bottom`` : Push element to the bottom of its container. * ``center_vertical`` : Place element in the vertical center of its container. * ``center`` : shorthand of ``center_horizontal|center_vertical`` * Default value: ``left|top`` * Aliases: ``layout_gravity``, ``lg`` .. _doxid-cssspecification_1autotoc_md233: layout-height ------------- Specifies the basic height of the element. This is a required attribute for any element inside of a containing layout element that doesn't use any fixed size for its childs (ej: :ref:`EE::UI::UILinearLayout `, :ref:`EE::UI::UIRelativeLayout `). Its value may be a length/dimension (such as ``12dp``) for a constant height or one of the special constants. * Applicable to: Any element child of a :ref:`EE::UI::UILinearLayout ` (LinearLayout) or :ref:`EE::UI::UIRelativeLayout ` (RelativeLayout) * Data Type: `length <#length-data-type>`__ or string-list * Value List: (for the constant values) * ``match_parent`` : The element must be as big as its parent. * ``wrap_content`` : The element should be only big enough to enclose its content (plus padding). * Default value: ``wrap_content`` * Aliases: ``layout_height``, ``lh`` .. _doxid-cssspecification_1autotoc_md235: layout-to-bottom-of ------------------- Positions the top edge of this element below the given anchor element ID. Accommodates top margin of this element and bottom margin of anchor view. * Applicatable to: Any child of a :ref:`EE::UI::UIRelativeLayout ` (RelativeLayout) * Data Type: `string <#string-data-type>`__ (anchor element ID) * Default value: *No value* * Aliases: ``layout_to_bottom_of`` .. _doxid-cssspecification_1autotoc_md237: layout-to-left-of ----------------- Positions the right edge of this element to the left of the given anchor element ID. Accommodates right margin of this element and left margin of anchor element. * Applicatable to: Any child of a :ref:`EE::UI::UIRelativeLayout ` (RelativeLayout) * Data Type: `string <#string-data-type>`__ (anchor element ID) * Default value: *No value* * Aliases: ``layout_to_left_of`` .. _doxid-cssspecification_1autotoc_md239: layout-to-right-of ------------------ Positions the left edge of this element to the right of the given anchor element ID. Accommodates left margin of this element and right margin of anchor element. * Applicatable to: Any child of a :ref:`EE::UI::UIRelativeLayout ` (RelativeLayout) * Data Type: `string <#string-data-type>`__ (anchor element ID) * Default value: *No value* * Aliases: ``layout_to_right_of`` .. _doxid-cssspecification_1autotoc_md241: layout-to-top-of ---------------- Positions the bottom edge of this element above the given anchor element ID. Accommodates bottom margin of this element and top margin of anchor view. * Applicatable to: Any child of a :ref:`EE::UI::UIRelativeLayout ` (RelativeLayout) * Data Type: `string <#string-data-type>`__ (anchor element ID) * Default value: *No value* * Aliases: ``layout_to_top_of`` .. _doxid-cssspecification_1autotoc_md243: layout-weight ------------- Indicates how much of the extra space in the :ref:`EE::UI::UILinearLayout ` (LinearLayout) is allocated to the element. Specify 0 if the element should not be stretched. Otherwise the extra pixels will be pro-rated among all views whose weight is greater than 0. The weight sum of all elements must be 1 to fill the whole parent length. The weight is applied to the orientation that the LinearLayout uses. This property behaves the same as the `android:layout_weight `__ XML attribute in Android (for those who are familiar with it). LinearLayout supports assigning a weight to individual children. This attribute assigns an "importance" value to a element, and allows it to expand to fill any remaining space in the parent view. Element/widget default weight is zero. In order to work properly you must set the `layout-width <#layout-width>`__ or the `layout-height <#layout-height>`__ to ``0`` to the element that uses layout weight. If the parent is a horizontal LinearLayout the `layout-width <#layout-width>`__ must be set to ``0``, and if the parent if a vertical LinearLayout the `layout-height <#layout-height>`__ must be set to ``0``, in order to use the layout weight. * Applicable to: Any element child of a :ref:`EE::UI::UILinearLayout ` (LinearLayout) * Data Type: `number <#number-data-type>`__ (normalized from ``0`` to ``1``) * Default value: ``0`` * Aliases: ``layout_weight``, ``lw8`` .. _doxid-cssspecification_1autotoc_md245: layout-width ------------ Specifies the basic width of the element. This is a required attribute for any element inside of a containing layout element that doesn't use any fixed size for its childs (ej: :ref:`EE::UI::UILinearLayout `, :ref:`EE::UI::UIRelativeLayout `). Its value may be a length/dimension (such as ``12dp``) for a constant width or one of the special constants. * Applicable to: Any element child of a :ref:`EE::UI::UILinearLayout ` (LinearLayout) or :ref:`EE::UI::UIRelativeLayout ` (RelativeLayout) * Data Type: `length <#length-data-type>`__ or string-list * Value List: (for the constant values) * ``match_parent`` : The element must be as big as its parent. * ``wrap_content`` : The element should be only big enough to enclose its content (plus padding). * Default value: ``wrap_content`` * Aliases: ``layout_width``, ``lw`` .. _doxid-cssspecification_1autotoc_md247: line-spacing ------------ Sets a extra line spacing to the line box. * Applicable to: Any element child of a :ref:`EE::UI::UICodeEditor ` (CodeEditor) * Data Type: `length <#length-data-type>`__ * Default value: ``0dp`` .. _doxid-cssspecification_1autotoc_md249: locked ------ Enable or disable editing on code editor elements. * Applicable to: :ref:`EE::UI::UICodeEditor ` (TextEdit) * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``false`` .. _doxid-cssspecification_1autotoc_md251: margin-bottom ------------- Read `margin-bottom `__ documentation. * Aliases: ``layout_marginBottom`` .. _doxid-cssspecification_1autotoc_md253: margin-left ----------- Read `margin-left `__ documentation. * Aliases: ``layout_marginLeft`` .. _doxid-cssspecification_1autotoc_md255: margin-right ------------ Read `margin-right `__ documentation. * Aliases: ``layout_marginRight`` .. _doxid-cssspecification_1autotoc_md257: margin-top ---------- Read `margin-top `__ documentation. * Aliases: ``layout_marginTop`` .. _doxid-cssspecification_1autotoc_md259: max-height ---------- Read `max-height `__ documentation. .. _doxid-cssspecification_1autotoc_md261: max-width --------- Read `max-width `__ documentation. .. _doxid-cssspecification_1autotoc_md263: max-edge-resistance ------------------- On a view pager the max edge resistance allows to scroll outside the edge limits by a percentage of the element width/height (depending on the view pager orientation) and automatically go back to the final position when released. * Applicable to: :ref:`EE::UI::UIViewPager ` (ViewPager) * Data Type: `number <#number-data-type>`__ (normalized between ``0`` and ``1``) * Default value: ``0`` .. _doxid-cssspecification_1autotoc_md265: max-length ---------- Sets the maximum length of an input. * Applicable to: :ref:`EE::UI::UITextInput ` (TextInput) * Data Type: integer * Default value: *No value* .. _doxid-cssspecification_1autotoc_md267: max-progress ------------ Sets the maximum number of progress that a loader can have. * Applicable to: :ref:`EE::UI::UILoader ` (Loader) * Data Type: `number <#number-data-type>`__ * Default value: ``100`` .. _doxid-cssspecification_1autotoc_md269: max-tab-width ------------- Sets the maximum tab width accepted in a tab widget. * Applicable to: :ref:`EE::UI::UITabWidget ` (TabWidget) * Data Type: `length <#length-data-type>`__ * Default value: ``300dp`` .. _doxid-cssspecification_1autotoc_md271: max-text-length --------------- Sets the maximum text length in a tab. * Applicable to: :ref:`EE::UI::UITabWidget ` (TabWidget) * Data Type: integer * Default value: ``100`` .. _doxid-cssspecification_1autotoc_md273: max-value --------- Sets the maximum value that a range element will hold. * Applicable to: :ref:`EE::UI::UISlider ` (Slider), :ref:`EE::UI::UIScrollBar ` (ScrollBar), :ref:`EE::UI::UISpinBox ` (SpinBox) * Data Type: `number <#number-data-type>`__ * Default value: ``1`` for Slider and ScrollBar. Float numeric limits for SpinBox. .. _doxid-cssspecification_1autotoc_md275: max-visible-items ----------------- Sets the maximum visible items for the list shown by a drop down list or combo box. * Applicable to: :ref:`EE::UI::UIDropDownList ` (DropDownList) * Data Type: integer * Default value: ``10`` .. _doxid-cssspecification_1autotoc_md277: min-height ---------- Read `min-height `__ documentation. .. _doxid-cssspecification_1autotoc_md279: min-icon-size ------------- Sets the minimum size of the icon inside a push button (or any widget that extends from it, for example a menu item or a tab). It's usually required for the :ref:`EE::UI::UIMenu ` (Menu) sice the icon box must have a size if the menu contains items with icons and others without, otherwise the menu items will be misaligned. * Applicatable to: :ref:`EE::UI::UIPushButton ` (PushButton), :ref:`EE::UI::UIMenuItem ` (Menu::item), :ref:`EE::UI::UITab ` (Tab), :ref:`EE::UI::UISelectButton ` (SelectButton), :ref:`EE::UI::UIMenuCheckBox ` (Menu::checkbox), :ref:`EE::UI::UIMenuSubMenu ` (Menu::SubMenu) * Data Type: `vector2-length <#vector2-length-data-type>`__ * Default value: *No value* .. _doxid-cssspecification_1autotoc_md281: min-tab-width ------------- Sets the minimum width that a tab can have inside a :ref:`EE::UI::UITabWidget ` (TabWidget). * Applicable to: :ref:`EE::UI::UITabWidget ` (TabWidget) * Data Type: `length <#length-data-type>`__ * Default value: ``32dp`` .. _doxid-cssspecification_1autotoc_md283: min-value --------- Sets the minimum value that a range element will hold. * Applicable to: :ref:`EE::UI::UISlider ` (Slider), :ref:`EE::UI::UIScrollBar ` (ScrollBar), :ref:`EE::UI::UISpinBox ` (SpinBox) * Data Type: `number <#number-data-type>`__ * Default value: ``0`` .. _doxid-cssspecification_1autotoc_md285: min-width --------- Read `min-width `__ documentation. .. _doxid-cssspecification_1autotoc_md287: movement-speed -------------- Sets the movement speed in displaced length per second of the progress bar filler. * Applicable to: :ref:`EE::UI::UIProgressBar ` (ProgressBar) * Data Type: `vector2-length <#vector2-length-data-type>`__ * Default value: ``0dp 0dp`` .. _doxid-cssspecification_1autotoc_md289: numeric ------- Sets the text input as a numeric input, this means that only numbers will be accepted and if `allow-float <#allow-float>`__ also is enabled it will allow numeric float numbers. * Applicable to: :ref:`EE::UI::UITextInput ` (TextInput) * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``false`` .. _doxid-cssspecification_1autotoc_md291: opacity ------- Read `opacity `__ documentation. .. _doxid-cssspecification_1autotoc_md293: orientation ----------- Sets the orientation to any element that allows vertical and horizontal orientation. * Applicable to: :ref:`EE::UI::UILinearLayout ` (LinearLayout), :ref:`EE::UI::UISlider ` (Slider), :ref:`EE::UI::UIScrollBar ` (ScrollBar), :ref:`EE::UI::UIViewPager ` (ViewPager) * Data Type: `string-list <#string-list-data-type>`__ * Value List: * ``horizontal`` * ``vertical`` * Default value: ``vertical`` for LinearLayout, Slider and ScrollBar, ``horizontal`` for ViewPager .. _doxid-cssspecification_1autotoc_md295: outline-thickness ----------------- Sets the outline thickness of the loader spinner. * Applicable to: :ref:`EE::UI::UILoader ` (Loader) * Data Type: `length <#length-data-type>`__ * Default value: ``8dp`` .. _doxid-cssspecification_1autotoc_md297: owns ---- Indicates the element ID that the Tab element owns. The ownership indicates that the element ID is going to be shown when the Tab element is selected, and will be closed if the Tab is closed. The owned element will be automatically resized to the tab widget container size. * Applicable to: :ref:`EE::UI::UITab ` (Tab) * Data Type: `string <#string-data-type>`__ (element ID) * Default value: *No value* .. _doxid-cssspecification_1autotoc_md299: padding-bottom -------------- Read `padding-bottom `__ documentation. .. _doxid-cssspecification_1autotoc_md301: padding-left ------------ Read `padding-left `__ documentation. .. _doxid-cssspecification_1autotoc_md303: padding-right ------------- Read `padding-right `__ documentation. .. _doxid-cssspecification_1autotoc_md305: padding-top ----------- Read `padding-top `__ documentation. .. _doxid-cssspecification_1autotoc_md307: page-locked ----------- Locks/unlocks the current page in a view pager (locking means that the page cannot be changed and it's not scrollable). * Applicable to: :ref:`EE::UI::UIViewPager ` (ViewPager) * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``false`` .. _doxid-cssspecification_1autotoc_md309: page-step --------- Sets the length value that needs the element to scroll a page. Currently the page step it's not used by any element but it's a value that can be fetched to implement a page up and down in a scrollable component. * Applicable to: :ref:`EE::UI::UISlider ` (Slider), :ref:`EE::UI::UIProgressBar ` (ProgressBar) * Data Type: `number <#number-data-type>`__ * Default value: ``0`` .. _doxid-cssspecification_1autotoc_md311: popup-to-root ------------- Sets if the drop down listbox should popup in the root widget node, otherwise will popup in the parent window. * Applicable to: :ref:`EE::UI::UIDropDownList ` (DropDownList) * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``false`` .. _doxid-cssspecification_1autotoc_md313: progress -------- Sets the current progress of any type of progress bar or loader. * Applicable to: EE::UI::UIProgresBar (ProgressBar), :ref:`EE::UI::UILoader ` (Loader) * Data Type: `number <#number-data-type>`__ * Default value: ``0`` .. _doxid-cssspecification_1autotoc_md315: radius ------ Sets the radius of a loader. This will not change the size of the loader, only the loader internal size. * Applicable to: :ref:`EE::UI::UILoader ` (Loader) * Data Type: `length <#length-data-type>`__ * Default value: ``0`` (but it will change with the loader layout size) .. _doxid-cssspecification_1autotoc_md317: reverse-draw ------------ Enables/disables the reverse draw order for the element. When enabled the element will draw from the last child to the first. * Applicable to: Any element * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``false`` .. _doxid-cssspecification_1autotoc_md319: rotation -------- Sets the element rotation in degrees. * Applicable to: Any element * Data Type: `number <#number-data-type>`__ * Default value: ``0`` * Aliases: ``rotate`` .. _doxid-cssspecification_1autotoc_md321: rotation-origin-point-x ----------------------- Sets the x-axis rotation origin point relative to the element expressed as a length or a percentage. * Applicable to: Any element * Data Type: `length-percentage <#length-percentage-data-type>`__ * Default value: ``center`` * Aliases: ``rotate-origin-point-x`` Syntax: .. ref-code-block:: cpp rotation-origin-point-x: 50dp; rotation-origin-point-x: center; rotation-origin-point-x: 100%; .. _doxid-cssspecification_1autotoc_md323: rotation-origin-point-y ----------------------- Sets the y-axis rotation origin point relative to the element expressed as a length or a percentage. * Applicable to: Any element * Data Type: `length-percentage <#length-percentage-data-type>`__ * Default value: ``center`` * Aliases: ``rotate-origin-point-y`` Syntax: .. ref-code-block:: cpp rotation-origin-point-y: 50dp; rotation-origin-point-y: center; rotation-origin-point-y: 100%; .. _doxid-cssspecification_1autotoc_md325: row-height ---------- Sets the row height in any element that contains fixed size rows. * Applicable to: :ref:`EE::UI::UIListBox ` (ListBox), :ref:`EE::UI::UIDropDownList ` (DropDownList), :ref:`EE::UI::UIWidgetTable ` (WidgetTable), :ref:`EE::UI::UIGridLayout ` (GridLayout), EE::UI::TableView (TableView), EE::UI::TreeView (TreeView), EE::UI::ListView (ListView) * Data Type: `length <#length-data-type>`__ * Default value: Varies on each case. ListBox and DropDownList will guess the value based on the `font-size <#font-size>`__. Table requires this value to be manually set in order to work. GridLayout will require the value only if `row-mode <#row-mode>`__ is ``size``. .. _doxid-cssspecification_1autotoc_md327: row-mode -------- Sets the row mode of a grid layout. The row mode defines how the size of the row of a grid layout is measured. * Applicable to: :ref:`EE::UI::UIGridLayout ` (GridLayout) * Data Type: `string-list <#string-list-data-type>`__ * Value List: * ``size`` : The row width of each grid child will be defined with a fixed width based on the value of the `row-width <#row-width>`__ length. * ``weight`` : The row width of each grid child will be calculated as a normalized percentage of the total grid width using the `row-weight <#row-weight>`__ value. * Default value: ``weight`` .. _doxid-cssspecification_1autotoc_md329: row-margin ---------- Sets the vertical separation between each element in the grid layout. * Applicable to: :ref:`EE::UI::UIGridLayout ` (GridLayout) * Data Type: `length <#length-data-type>`__ * Default value: ``0dp`` .. _doxid-cssspecification_1autotoc_md331: row-weight ---------- Sets the percentage height of the child elements of a grid layout. `row-mode <#row-mode>`__ must be ``weight`` in order to work. * Applicable to: :ref:`EE::UI::UIGridLayout ` (GridLayout) * Data Type: `number <#number-data-type>`__ (normalized between ``0`` and ``1``) * Default value: ``0.25`` .. _doxid-cssspecification_1autotoc_md333: scale ----- Sets the scale of the element. * Applicable to: Any element * Data Type: `vector2-number <#vector2-number-data-type>`__ * Default value: ``1 1`` .. _doxid-cssspecification_1autotoc_md335: scale-origin-point-x -------------------- Sets the x-axis scale origin point relative to the element expressed as a length or a percentage. * Applicable to: Any element * Data Type: `length-percentage <#length-percentage-data-type>`__ * Default value: ``center`` Syntax: .. ref-code-block:: cpp scale-origin-point-x: 50dp; scale-origin-point-x: center; scale-origin-point-x: 100%; .. _doxid-cssspecification_1autotoc_md337: scale-origin-point-y -------------------- Sets the y-axis scale origin point relative to the element expressed as a length or a percentage. * Applicable to: Any element * Data Type: `length-percentage <#length-percentage-data-type>`__ * Default value: ``center`` Syntax: .. ref-code-block:: cpp scale-origin-point-y: 50dp; scale-origin-point-y: center; scale-origin-point-y: 100%; .. _doxid-cssspecification_1autotoc_md339: scale-type ---------- Sets a method to scale the image inside an element. * Applicable to: :ref:`EE::UI::UIImage ` (Image), :ref:`EE::UI::UITextureRegion ` (TextureRegion) * Data Type: `string-list <#string-list-data-type>`__ * Value List: * ``fit-inside`` : Fits the image inside the element mantaining its ratio. * ``expand`` : Expands the image to cover the whole element without mantaining its ratio. * ``none`` : Keeps the image as it is. .. _doxid-cssspecification_1autotoc_md341: scrollbar-mode -------------- Defines how the scrollbar should fit inside an scrollable element. * Applicable to: :ref:`EE::UI::UIScrollView ` (ScrollView) * Data Type: `string-list <#string-list-data-type>`__ * Value List: * ``inclusive`` : The scrollbar is part of the scrollable element container, this means that it will be on top of the content (scrollbars on mobile usually behave like this). * ``exclusive`` : The scrollbar is outside the scrollable element container, this means that it will not be on top of the content (scrollbars on desktop usually behave like this). * Default value: ``exclusive`` .. _doxid-cssspecification_1autotoc_md343: scrollbar-style --------------- Sets the scrollbar style (for the moment defines if it contains buttons at its edge or it's simply a bar). * Applicable to: :ref:`EE::UI::UIScrollBar ` (ScrollBar), :ref:`EE::UI::UIListBox ` (ListBox), :ref:`EE::UI::UIDropDownList ` (DropDownList), :ref:`EE::UI::UIWidgetTable ` (WidgetTable), :ref:`EE::UI::UIScrollView ` (ScrollView) * Data Type: `string-list <#string-list-data-type>`__ * Value List: * ``no-buttons`` : It's just a scroll bar. * ``two-buttons`` : Adds to buttons at its edge. * Default value: ``two-buttons`` for desktop platforms, ``no-button`` for mobile. .. _doxid-cssspecification_1autotoc_md345: selected -------- Sets the element state as selected when supported by the specific widget. * Applicable to: :ref:`EE::UI::UICheckBox ` (CheckBox), :ref:`EE::UI::UIRadioButton ` (RadioButton), EE::UI::SelectButton (SelectButton) * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``false`` * Aliases: ``active`` .. _doxid-cssspecification_1autotoc_md347: selected-index -------------- Selects an item inside an element containing a list of items from the item index in the list (starting from ``0``). * Applicable to: :ref:`EE::UI::UIListBox ` (ListBox), :ref:`EE::UI::UIDropDownList ` (DropDownList) * Data Type: integer * Default value: *No value* .. _doxid-cssspecification_1autotoc_md349: selectex-text ------------- Selects an item inside an element containing a list of items from its item text. * Applicable to: :ref:`EE::UI::UIListBox ` (ListBox), :ref:`EE::UI::UIDropDownList ` (DropDownList) * Data Type: `string <#string-data-type>`__ * Default value: *No value* .. _doxid-cssspecification_1autotoc_md351: selection-back-color -------------------- Sets the text selection background color on a text element that suports text selection. * Applicable to: :ref:`EE::UI::UITextView ` (TextView) and any element that holds inside or extends from a TextView. :ref:`EE::UI::UICheckBox ` (CheckBox), :ref:`EE::UI::UIRadioButton ` (RadioButton), :ref:`EE::UI::UITextInput ` (TextInput), :ref:`EE::UI::UIListBoxItem ` (ListBox::item), :ref:`EE::UI::UIDropDownList ` (DropDownList), :ref:`EE::UI::UITextInputPassword ` (TextInputPassword) * Data Type: `color <#color-data-type>`__ * Default color: ``#323232`` .. _doxid-cssspecification_1autotoc_md353: selection-color --------------- Sets the text selection color on a text element that suports text selection. * Applicable to: :ref:`EE::UI::UITextView ` (TextView) and any element that holds inside text or extends from a TextView. :ref:`EE::UI::UICheckBox ` (CheckBox), :ref:`EE::UI::UIRadioButton ` (RadioButton), :ref:`EE::UI::UITextInput ` (TextInput), :ref:`EE::UI::UIListBoxItem ` (ListBox::item), :ref:`EE::UI::UIDropDownList ` (DropDownList), :ref:`EE::UI::UITextInputPassword ` (TextInputPassword), :ref:`EE::UI::UIPushButton ` (PushButton) * Data Type: `color <#color-data-type>`__ * Default color: ``white`` .. _doxid-cssspecification_1autotoc_md355: select-on-click --------------- Enables the selection state toggle on element click. * Applicable to: EE::UI::SelectButton (SelectButton) * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``false`` .. _doxid-cssspecification_1autotoc_md357: skin ---- Sets the skin (a.k.a. decoration) to an element. Element skins are automatically applied if there's a specific skin for the element loaded in the current theme, but new skins can be used and loaded with this property. Skins are a way to decorate the widgets, they are loaded from a list of textures or from a texture atlas. Skins are stateful, this means that a skin can contain all the possible states that a widget can have for decoration, these are: ``normal``, ``focus``, ``selected``, ``hover``, ``pressed``, ``selectedhover``, ``selectedpressed``, ``disabled``, ``checked``. Current UI skin documentation is lacking. * Applicable to: Any element * Data Type: `string <#string-data-type>`__ (skin name or ``none`` to disable skinning) * Default value: The skin corresponding to the widget. .. _doxid-cssspecification_1autotoc_md359: skin-color ---------- Sets the `skin <#skin>`__ tint color. * Applicable to: Any element * Data Type: `color <#color-data-type>`__ * Default value: ``white`` (no tint) .. _doxid-cssspecification_1autotoc_md361: splitter-always-show -------------------- Sets if the splitter divisor is always visible. If false it will be shown only if two views are attached to the splitter. * Applicable to: :ref:`EE::UI::UISplitter ` (Splitter) * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``true`` .. _doxid-cssspecification_1autotoc_md363: splitter-partition ------------------ Sets the space ocuppied by the first view contained by the splitter. * Applicable to: :ref:`EE::UI::UISplitter ` (Splitter) * Data Type: `length-percentage <#length-percentage-data-type>`__ * Default value: ``50%`` .. _doxid-cssspecification_1autotoc_md365: src --- Sets the source of a resource in an element that supports source. * Applicable to: :ref:`EE::UI::UIImage ` (Image), :ref:`EE::UI::UISprite ` (Sprite), :ref:`EE::UI::UITextureRegion ` (TextureRegion) * Data Type: `resource-path <#resource-path-data-type>`__ * Default value: *No value* .. _doxid-cssspecification_1autotoc_md367: tabbar-hide-on-single-tab ------------------------- Enables/disables the tab bar hiding when only one tab is contained in the tab widget. * Applicable to: :ref:`EE::UI::UITabWidget ` (TabWidget) * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``false`` .. _doxid-cssspecification_1autotoc_md369: tabbar-allow-rearrange ---------------------- Enables/disables manually rearraging the tabs in the tab bar. * Applicable to: :ref:`EE::UI::UITabWidget ` (TabWidget) * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``false`` .. _doxid-cssspecification_1autotoc_md371: tabbar-allow-drag-and-drop-tabs ------------------------------- Enables/disables the hability to move any tab from a TabWidget to another. * Applicable to: :ref:`EE::UI::UITabWidget ` (TabWidget) * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``false`` .. _doxid-cssspecification_1autotoc_md373: tabbar-allow-switch-tabs-in-empty-spaces ---------------------------------------- Enables/disables switching tabs from empty/blank spaces in the tab widget. * Applicable to: :ref:`EE::UI::UITabWidget ` (TabWidget) * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``false`` .. _doxid-cssspecification_1autotoc_md375: tab-closable ------------ Enables/disables tabs to be closable with the middle mouse button click or by clicking on the close button. * Applicable to: :ref:`EE::UI::UITabWidget ` (TabWidget) * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``false`` .. _doxid-cssspecification_1autotoc_md377: tabs-edges-diff-skin -------------------- Enable/disable the tabs edges (most left and right) to use a different skin/decoration from the other tabs. The most left tab will use the skin: ``tab_left`` and the most right tab will use ``tab_right``. instead of using the normal ``tab`` skin. This is to be able to achieve more "closed" tab widgets. * Applicable to: :ref:`EE::UI::UITabWidget ` (TabWidget) * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``false`` .. _doxid-cssspecification_1autotoc_md379: tab-height ---------- Sets the tab widget tabs container height. If not set it will try to get the height from the tab skin height. * Applicable to: :ref:`EE::UI::UITabWidget ` (TabWidget) * Data Type: `length <#length-data-type>`__ * Default value: ``0dp`` .. _doxid-cssspecification_1autotoc_md380: tab-separation -------------- Sets the tabs separation/distance between each other. Negative values are accepted. * Applicable to: :ref:`EE::UI::UITabWidget ` (TabWidget) * Data Type: `length <#length-data-type>`__ * Default value: ``0dp`` .. _doxid-cssspecification_1autotoc_md382: text ---- Sets the text to any element that holds or contains text. Usually this property will not be set in the CSS file but in the XML as an attribute or from the code implementation, but it's available as an option. * Applicable to: :ref:`EE::UI::UITextView ` (TextView) and any element that holds inside or extends from a TextView. :ref:`EE::UI::UICheckBox ` (CheckBox), :ref:`EE::UI::UIRadioButton ` (RadioButton), :ref:`EE::UI::UITextInput ` (TextInput), :ref:`EE::UI::UIListBoxItem ` (ListBox::item), :ref:`EE::UI::UIDropDownList ` (DropDownList), :ref:`EE::UI::UITextInputPassword ` (TextInputPassword), :ref:`EE::UI::UITooltip ` (Tooltip), :ref:`EE::UI::UITab ` (Tab), :ref:`EE::UI::UITextEdit ` (TextEdit) * Data Type: `string <#string-data-type>`__ * Default value: *No value* .. _doxid-cssspecification_1autotoc_md384: text-align ---------- Read `text-align `__ documentation. .. _doxid-cssspecification_1autotoc_md386: text-as-fallback ---------------- When enabled will only display text if the icon is not set/found. * Applicable to: :ref:`EE::UI::UIPushButton ` (PushButton) * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``false`` .. _doxid-cssspecification_1autotoc_md388: text-overflow ------------- Read `text-overflow `__ documentation. .. _doxid-cssspecification_1autotoc_md390: text-selection -------------- Enables/disables text selection in any element that contains text. * Applicable to: :ref:`EE::UI::UITextView ` (TextView) and any element that holds inside or extends from a TextView. :ref:`EE::UI::UICheckBox ` (CheckBox), :ref:`EE::UI::UIRadioButton ` (RadioButton), :ref:`EE::UI::UITextInput ` (TextInput), :ref:`EE::UI::UIListBoxItem ` (ListBox::item), :ref:`EE::UI::UIDropDownList ` (DropDownList), :ref:`EE::UI::UITextInputPassword ` (TextInputPassword), :ref:`EE::UI::UITooltip ` (Tooltip), :ref:`EE::UI::UITab ` (Tab), :ref:`EE::UI::UITextEdit ` (TextEdit) * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``true`` for TextEdit, TextInput. ``false`` for any other element. .. _doxid-cssspecification_1autotoc_md392: text-shadow-color ----------------- Sets the text shadow color. * Applicable to: :ref:`EE::UI::UITextView ` (TextView) and any element that holds inside text or extends from a TextView. :ref:`EE::UI::UICheckBox ` (CheckBox), :ref:`EE::UI::UIRadioButton ` (RadioButton), :ref:`EE::UI::UITextInput ` (TextInput), :ref:`EE::UI::UIListBoxItem ` (ListBox::item), :ref:`EE::UI::UIDropDownList ` (DropDownList), :ref:`EE::UI::UITextInputPassword ` (TextInputPassword), :ref:`EE::UI::UIPushButton ` (PushButton), EE::UI::UIToolti (Tooltip) * Data Type: `color <#color-data-type>`__ * Default color: ``#323232E6`` .. _doxid-cssspecification_1autotoc_md394: text-shadow-offset ------------------ Sets the text shadow offset. * Applicable to: :ref:`EE::UI::UITextView ` (TextView) and any element that holds inside text or extends from a TextView. :ref:`EE::UI::UICheckBox ` (CheckBox), :ref:`EE::UI::UIRadioButton ` (RadioButton), :ref:`EE::UI::UITextInput ` (TextInput), :ref:`EE::UI::UIListBoxItem ` (ListBox::item), :ref:`EE::UI::UIDropDownList ` (DropDownList), :ref:`EE::UI::UITextInputPassword ` (TextInputPassword), :ref:`EE::UI::UIPushButton ` (PushButton), EE::UI::UIToolti (Tooltip) * Data Type: `vector2-number <#vector2-number-data-type>`__ * Default offset: ``1dp 1dp`` .. _doxid-cssspecification_1autotoc_md396: text-stroke-color ----------------- Sets the text stroke (also known as text outline) color. * Applicable to: :ref:`EE::UI::UITextView ` (TextView) and any element that holds inside or extends from a TextView. * Data Type: `color <#color-data-type>`__ * Default color: ``black`` * Aliases: ``fontOutlineColor`` .. _doxid-cssspecification_1autotoc_md398: text-stroke-width ----------------- Sets the text stroke (also known as text outline) width/thickness. * Applicable to: :ref:`EE::UI::UITextView ` (TextView) and any element that holds inside or extends from a TextView. * Data Type: `length <#length-data-type>`__ * Default value: ``0dp`` * Aliases: ``fontOutlineThickness`` .. _doxid-cssspecification_1autotoc_md400: text-transform -------------- The text-transform CSS property specifies how to capitalize an element's text. It can be used to make text appear in all-uppercase or all-lowercase, or with each word capitalized. * Applicable to: :ref:`EE::UI::UITextView ` (TextView) and any element that holds inside or extends from a TextView, :ref:`EE::UI::UITooltip ` (Tooltip). * Data Type: `string-list <#string-list-data-type>`__ * Value List: * ``lowercase`` * ``uppercase`` * ``capitalize`` * ``none`` * Default value: ``none`` .. _doxid-cssspecification_1autotoc_md402: theme ----- Sets a theme to the element. Changing the theme will not have any effect unless `skin <#skin>`__ is also set. * Applicable to: Any element * Data Type: `string <#string-data-type>`__ * Default value: *No value* .. _doxid-cssspecification_1autotoc_md404: timing-function --------------- Sets the timing function (easing function) of a view pager. * Applicable to: :ref:`EE::UI::UIViewPager ` (ViewPager) * Data Type: `string <#string-data-type>`__ * Value List: * Current timing functions supported: linear, quadratic-in, quadratic-out, quadratic-in-out, sine-in, sine-out, sine-in-out, exponential-in, exponential-out, exponential-in-out, quartic-in, quartic-out, quartic-in-out, circular-in, circular-out, circular-in-out, cubic-in, cubic-out, cubic-in-out, back-in, back-out, back-in-out, bounce-in, bounce-out, bounce-in-out, elastic-in, elastic-out, elastic-in-out, none. * Default value: ``sine-in`` .. _doxid-cssspecification_1autotoc_md406: tint ---- Sets the tint color of an image. * Applicable to: :ref:`EE::UI::UIImage ` (Image), :ref:`EE::UI::UITextureRegion ` (TextureRegion) * Data Type: `color <#color-data-type>`__ * Default value: ``white`` (no tint) .. _doxid-cssspecification_1autotoc_md408: tooltip ------- Sets the tooltip text and enables the tooltip to the element. Usually this property will not be set in the CSS file but in the XML as an attribute or from the code implementation, but it's available as an option. * Applicable to: Any element * Data Type: `string <#string-data-type>`__ * Default value: *No value* .. _doxid-cssspecification_1autotoc_md410: total-steps ----------- Sets the total steps required to complete a progress bar (the maximum value a progress bar will hold). * Applicable to: :ref:`EE::UI::UIProgressBar ` (ProgressBar) * Data Type: `number <#number-data-type>`__ * Default value: ``100`` .. _doxid-cssspecification_1autotoc_md412: touch-drag ---------- Enables/disables the element as draggable. When enabled the element will be able to be dragged. * Applicable to: EE::UI::UITouchDraggable (TouchDraggable), (:ref:`EE::UI::UIListBox ` (ListBox), :ref:`EE::UI::UIScrollView ` (ScrollView), :ref:`EE::UI::UIWidgetTable ` (WidgetTable) * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``false`` .. _doxid-cssspecification_1autotoc_md414: touch-drag-deceleration ----------------------- Sets a acceleration value that defines how much will accelerate the drag when the mouse or touch is released. * Applicable to: EE::UI::UITouchDraggable (TouchDraggable), (:ref:`EE::UI::UIListBox ` (ListBox), :ref:`EE::UI::UIScrollView ` (ScrollView), :ref:`EE::UI::UIWidgetTable ` (WidgetTable) * Data Type: `vector2-number <#vector2-number-data-type>`__ * Default value: ``5 5`` .. _doxid-cssspecification_1autotoc_md416: transition-delay ---------------- Read `transition-delay `__ documentation. .. _doxid-cssspecification_1autotoc_md418: transition-duration ------------------- Read `transition-duration `__ documentation. .. _doxid-cssspecification_1autotoc_md420: transition-property ------------------- Read `transition-property `__ documentation. .. _doxid-cssspecification_1autotoc_md422: transition-timing-function -------------------------- Read `transition-timing-function `__ documentation. Timing function names are custom, and not the same as the standard, but ``cubic-bezier`` is supported. Current timing functions supported: linear, quadratic-in, quadratic-out, quadratic-in-out, sine-in, sine-out, sine-in-out, exponential-in, exponential-out, exponential-in-out, quartic-in, quartic-out, quartic-in-out, circular-in, circular-out, circular-in-out, cubic-in, cubic-out, cubic-in-out, back-in, back-out, back-in-out, bounce-in, bounce-out, bounce-in-out, elastic-in, elastic-out, elastic-in-out, cubic-bezier, none. .. _doxid-cssspecification_1autotoc_md423: value ----- Sets the current value to an element that accepts values. * Applicable to: :ref:`EE::UI::UIScrollBar ` (ScrollBar), :ref:`EE::UI::UISlider ` (Slider), :ref:`EE::UI::UISpinBox ` (SpinBox) * Data Type: `number <#number-data-type>`__ * Default value: *Not set* .. _doxid-cssspecification_1autotoc_md425: vertical-expand --------------- In a progress bar enables/disables if the progress bar filler should be expanded vertically to the element height. Whend disabled the filler height will be defined by the filler skin height. * Applicable to: :ref:`EE::UI::UIScrollBar ` (ScrollBar) * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``true`` .. _doxid-cssspecification_1autotoc_md427: visible ------- Enables/disables the element visibility. * Applicable to: Any element * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``true`` .. _doxid-cssspecification_1autotoc_md429: vscroll-mode ------------ Sets the vertical scroll mode to any scrollable element. The mode defines the visibility of the vertical scroll. * Applicable to: EE::UI::DropDownList (DropDownList), :ref:`EE::UI::UIListBox ` (ListBox), :ref:`EE::UI::UIScrollView ` (ScrollView), :ref:`EE::UI::UIWidgetTable ` (WidgetTable), :ref:`EE::UI::UITextEdit ` (TextEdit). * Data Type: `string-list <#string-list-data-type>`__ * Value List: * ``auto`` : The vertical scrollbar will be visible only when needed. * ``on`` : The vertical scrollbar will be always visible. * ``off`` : The vertical scrollbar will be always hidden. * Default value: ``auto`` .. _doxid-cssspecification_1autotoc_md431: window-border-auto-size ----------------------- Sets if the window border size should be automatically calculated based on the skin size. * Applicable to: :ref:`EE::UI::UIWindow ` (Window) * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``true`` .. _doxid-cssspecification_1autotoc_md433: window-border-size ------------------ Manually sets the size of the window border. * Applicable to: :ref:`EE::UI::UIWindow ` (Window) * Data Type: `vector2-length <#vector2-length-data-type>`__ * Default value: *No value* .. _doxid-cssspecification_1autotoc_md435: window-buttons-offset --------------------- Sets the window titlebar buttons position offset. * Applicable to: :ref:`EE::UI::UIWindow ` (Window) * Data Type: `vector2-length <#vector2-length-data-type>`__ * Default Value: ``0dp 0dp`` .. _doxid-cssspecification_1autotoc_md437: window-buttons-separation ------------------------- Sets the separation between the window titlebar buttons. * Applicable to: :ref:`EE::UI::UIWindow ` (Window) * Data Type: `length <#length-data-type>`__ * Default value: ``4dp`` .. _doxid-cssspecification_1autotoc_md439: window-corner-distance ---------------------- Sets the minimum distance where the hovering cursor detects an edge of the window to enable edge resizing. * Applicable to: :ref:`EE::UI::UIWindow ` (Window) * Data Type: `length <#length-data-type>`__ * Default value: ``24dp`` .. _doxid-cssspecification_1autotoc_md441: window-flags ------------ Sets the window flags. Window flags activate a set of different boolean options of the window. Multiple values are separated with a ``|`` (as a logical or). * Applicable to: :ref:`EE::UI::UIWindow ` (Window) * Data Type: `string-list <#string-list-data-type>`__ * Value List: * ``default`` : same as ``close|buttonactions|resizeable|shareopacity`` * ``close`` : Adds a close button to the titlebar. * ``maximize`` : Adds a maximize button to the titlebar. * ``minimize`` : Adds a minimize button to the titlebar. * ``draggable`` : Makes the window background draggable. * ``shadow`` : The window will project a shadow. * ``modal`` : Makes the window modal (blocks interacting any element ouside the window). * ``undecorated`` : Creates an undecorated window (no borders and titlebar). * ``resizeable`` : Makes the window resizeable. * ``shareopacity`` : Childs will inherit the window opacity (otherwise if you change the opacity of the window will only affect its borders, background and titlebar). * ``buttonactions`` : Implements the window minimize, maximize and close buttons default actions. This means that close button click will close, minimize will hide (but not close) and maximize will maximize. * ``framebuffer`` : Creates the window on its own frame buffer. * ``colorbuffer`` : Enables the color buffer to the frame buffer (if active). * Default value: ``default`` .. _doxid-cssspecification_1autotoc_md443: window-min-size --------------- Sets the window minimum size. * Applicable to: EE::UI::Window (Window) * Data Type: `vector2-length <#vector2-length-data-type>`__ * Default value: *No value* .. _doxid-cssspecification_1autotoc_md445: window-opacity -------------- Sets the base opacity of a window, this is the maximum opacity that the window will be able to have. And the opacity property applied to the window will be multiplied by this value. * Applicable to: :ref:`EE::UI::UIWindow ` (window) * Data Type: `number <#number-data-type>`__ * Default value: ``1`` .. _doxid-cssspecification_1autotoc_md447: window-title ------------ Sets the window title. * Applicable to: :ref:`EE::UI::UIWindow ` (Window) * Data Type: `string <#string-data-type>`__ * Default value: *No value* .. _doxid-cssspecification_1autotoc_md448: window-titlebar-auto-size ------------------------- Sets if the window titlebar size should be automatically calculated based on the skin size. * Applicable to: :ref:`EE::UI::UIWindow ` (Window) * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``true`` .. _doxid-cssspecification_1autotoc_md450: window-titlebar-size -------------------- Manually sets the size of the window titlebar. * Applicable to: :ref:`EE::UI::UIWindow ` (Window) * Data Type: `vector2-length <#vector2-length-data-type>`__ * Default value: *No value*. .. _doxid-cssspecification_1autotoc_md452: word-wrap --------- Enables/disables word-wrap in the text view element. * Applicable to: EE::UI::UITextVIew (TextView), :ref:`EE::UI::UITextInput ` (TextInput), :ref:`EE::UI::UICheckBox ` (CheckBox), :ref:`EE::UI::UIRadioButton ` (RadioButton), :ref:`EE::UI::UIListBoxItem ` (ListBox::item), :ref:`EE::UI::UITextInputPassword ` (TextInputPassword), :ref:`EE::UI::UIDropDownList ` (DropDownList). * Data Type: `boolean <#boolean-data-type>`__ * Default value: ``false`` .. _doxid-cssspecification_1autotoc_md454: CSS Shorthands ~~~~~~~~~~~~~~ `Shorthand properties `__ are CSS properties that let you set the values of multiple other CSS properties simultaneously. Using a shorthand property, you can write more concise (and often more readable) style sheets, saving time and energy. .. _doxid-cssspecification_1autotoc_md456: animation --------- Read `animation `__ documentation. .. _doxid-cssspecification_1autotoc_md458: background ---------- Read `background `__ documentation. Only eepp CSS properties supported are valid in the shorthand. .. _doxid-cssspecification_1autotoc_md460: background-position ------------------- Read `background-position `__ documentation. .. _doxid-cssspecification_1autotoc_md462: border ------ Read `border `__ documentation. ``border-style`` is not implemented yet. .. _doxid-cssspecification_1autotoc_md464: border-bottom ------------- Read `border `__ documentation. ``border-style`` is not implemented yet. .. _doxid-cssspecification_1autotoc_md466: border-color ------------ Read `border-color `__ documentation. .. _doxid-cssspecification_1autotoc_md468: border-left ----------- Read `border `__ documentation. ``border-style`` is not implemented yet. .. _doxid-cssspecification_1autotoc_md470: border-radius ------------- Read `border-radius `__ documentation. .. _doxid-cssspecification_1autotoc_md472: border-right ------------ Read `border `__ documentation. ``border-style`` is not implemented yet. .. _doxid-cssspecification_1autotoc_md474: border-width ------------ Read `border-width `__ documentation. .. _doxid-cssspecification_1autotoc_md476: border-top ---------- Read `border `__ documentation. ``border-style`` is not implemented yet. .. _doxid-cssspecification_1autotoc_md478: box-margin ---------- Shorthand for `column-margin <#column-margin>`__ and `row-margin <#row-margin>`__ (in that order). The syntax consists in two lengths separated by a space. Syntax: .. ref-code-block:: cpp box-margin: 10dp 10dp; .. _doxid-cssspecification_1autotoc_md480: focusable --------- Set / unset the widget as focusable to navigate with tab / tab + shift navigation .. _doxid-cssspecification_1autotoc_md482: foreground ---------- Same as the `background <#background>`__ but for the foreground of the node. The foreground is rendered on the top of the element. .. _doxid-cssspecification_1autotoc_md484: foreground-position ------------------- Same as the `background-position <#background-position>`__ but for the foreground of the node. .. _doxid-cssspecification_1autotoc_md486: foreground-radius ----------------- Same as the `border-radius <#border-radius>`__ but for the foreground of the node. .. _doxid-cssspecification_1autotoc_md488: hint-shadow ----------- The hint text shadow, same as text-shadow but for hints. Read `text-shadow `__ documentation. blur-radius is not supported. .. _doxid-cssspecification_1autotoc_md490: margin ------ Read `margin `__ documentation. .. _doxid-cssspecification_1autotoc_md492: min-size -------- Shorthand for `min-width <#min-width>`__ and `min-height <#min-height>`__ .. _doxid-cssspecification_1autotoc_md494: max-size -------- Shorthand for `max-width <#max-width>`__ and `max-height <#max-height>`__ .. _doxid-cssspecification_1autotoc_md496: padding ------- Read `padding `__ documentation. .. _doxid-cssspecification_1autotoc_md498: rotation-origin-point --------------------- The origin point of the rotation expressed as a `position <#position-data-type>`__. Default value: ``center center``. Aliases: ``rotate-origin-point`` Syntax: .. ref-code-block:: cpp rotation-origin-point: 50dp 10dp; rotation-origin-point: center top; rotation-origin-point: 100% 0%; .. _doxid-cssspecification_1autotoc_md500: scale-origin-point ------------------ The origin point of the node scale expressed as `position <#position-data-type>`__. Default value: ``center center``. Syntax: .. ref-code-block:: cpp scale-origin-point: 50dp 10dp; scale-origin-point: center top; scale-origin-point: 100% 0%; .. _doxid-cssspecification_1autotoc_md502: transition ---------- Read `transition `__ documentation. .. _doxid-cssspecification_1autotoc_md503: text-shadow ----------- Read `text-shadow `__ documentation. blur-radius is not supported. .. _doxid-cssspecification_1autotoc_md505: At-rules ~~~~~~~~ `At-rules `__ are CSS statements that instructs CSS how to behave. They begin with an at sign, '@' (U+0040 COMMERCIAL AT), followed by an identifier and includes everything up to the next semicolon, ';' (U+003B SEMICOLON), or the next CSS block, whichever comes first. The following at-rules are currently supported: * `@import `__ — Tells the CSS engine to include an external style sheet. * `@media `__ — A conditional group rule that will apply its content if the device meets the criteria of the condition defined using a media query. Media features currently supported: `width `__, `height `__, `device-width `__, `device-height `__, `orientation `__, `aspect-ratio `__, `device-aspect-ratio `__, `color `__, `color-index `__, `monochrome `__, `resolution `__, `prefers-color-scheme `__. Note: eepp prefers dark as default. non-standard media features: *pixel-density* : The ``pixel-density`` feature is specified as a ``float`` value representing the current pixel density used by the application. It is a range feature, meaning that you can also use the prefixed min-pixel-density and max-pixel-density variants to query minimum and maximum values, respectively. Also, eepp only uses ``screen`` media type. * `@font-face `__ — Describes the aspect of an external font to be downloaded. Only `font-family `__ and `src `__ properties are supported at the moment. * `@keyframes `__ — Describes the aspect of intermediate steps in a CSS animation sequence. .. _doxid-cssspecification_1autotoc_md506: Pseudo-class selectors ~~~~~~~~~~~~~~~~~~~~~~ A `CSS pseudo-class `__ is a keyword added to a selector that specifies a special state of the selected element(s). For example, :hover can be used to change a button's color when the user's pointer hovers over it. Most common pseudo-class selectors are supported. The list is: * `:hover `__ * `:focus `__ * `:focus-within `__ * `:checked `__ * `:disabled `__ * `:empty `__ * `:enabled `__ * `:active or :pressed `__ * `:first-child `__ * `:first-of-type `__ * `:last-child `__ * `:last-of-type `__ * `:not() `__ * `:nth-child() `__ * `:nth-last-child() `__ * `:nth-last-of-type() `__ * `:nth-of-type() `__ * `:only-child `__ * `:only-of-type `__ * `:root `__ * :selected Matches when elements are selectable and currently selected. .. _doxid-cssspecification_1autotoc_md507: CSS Data Types ~~~~~~~~~~~~~~ CSS data types define typical values (including keywords and units) accepted by CSS properties and functions. For more details regarding this topic please read the `CSS values and units Mozilla docs `__. **Types:** .. _doxid-cssspecification_1autotoc_md508: boolean (data-type) ------------------- Binary state with two possible values: * ``true`` * Aliases: ``1``, ``t``, ``T``, ``y``, ``Y`` * ``false`` * Aliases: ``0``, ``f``, ``F``, ``n``, ``N`` .. _doxid-cssspecification_1autotoc_md510: integer (data-type) ------------------- Read `integer `__ documentation. .. _doxid-cssspecification_1autotoc_md512: color (data-type) ----------------- Read `color `__ documentation. **Differences with documentation:** * Only CSS Level 1 color keywords supported. * eepp adds hsv and hsva functions with the same syntax that hsl and hsla. * System colors not support. * New global color keywords can be registered to eepp by calling the static function: :ref:`EE::System::Color::registerColor `. .. _doxid-cssspecification_1autotoc_md514: length (data-type) ------------------ Read `length `__ documentation. **Differences with documentation:** * Supported lenghts: ``em``, ``rem``, ``pt``, ``pc``, ``in``, ``cm``, ``mm``, ``vw``, ``vh``, ``vmin``, ``vmax``. * Also adds: ``dp`` as `Device-independent pixel `__. Plus ``dpr`` (dp rounded), ``dprd`` (dp rounded down) and ``dpru`` (dp rounded up). .. _doxid-cssspecification_1autotoc_md516: length-percentage (data-type) ----------------------------- Read `length-percentage `__ documentation. **Differences with documentation:** * ``calc`` currently not supported .. _doxid-cssspecification_1autotoc_md518: number (data-type) ------------------ Read `number `__ documentation. .. _doxid-cssspecification_1autotoc_md520: position (data-type) -------------------- Read `position `__ documentation. .. _doxid-cssspecification_1autotoc_md522: resource-path (data-type) ------------------------- For :ref:`EE::UI::UIImage ` (Image), background-image, foreground-image (all the examples are valid). For a :ref:`EE::UI::UITextureRegion ` (TextureRegion) only the examples with: @textureregion, @drawable, drawable_resource_name from a texture region resource are valid. For a :ref:`EE::UI::UISprite ` (Sprite) only the examples with: all the examples are valid except for @9p and http/s resources. Valid resources path: .. ref-code-block:: cpp file://assets/icon/ee.png; /** relative path to the current working diretory */ "file://assets/icon/ee.png"; https://raw.githubusercontent.com/SpartanJ/eepp/develop/bin/assets/icon/ee.png; "https://raw.githubusercontent.com/SpartanJ/eepp/develop/bin/assets/icon/ee.png"; url(file://assets/icon/ee.png); url(https://raw.githubusercontent.com/SpartanJ/eepp/develop/bin/assets/icon/ee.png); url("file://assets/icon/ee.png"); url(data:image/format;base64,data); url(data:image/format,url-encoded-data); @image/image_name_already_in_texture_factory; @texture/image_name_already_in_texture_factory; @textureregion/region_name_already_in_any_texture_atlas; @sprite/sprite_name_already_in_any_texture_atlas; /* sprite pattern name **/ @drawable/drawable_name_already_in_any_drawable_manager; /* drawable managers are any holder of image resources. This includes: texture atlases, textures, nine patchs. */ @9p/nine_patch_resource_name_already_in_the_nine_path_manager; drawable_resource_name; /** same as doing: @drawable/drawable_resource_name */ linear-gradient(from_color, to_color); linear-gradient(direction, from_color, to_color); /** valid directions are (without quotes): "to bottom", "to left", "to right", "to top". */ circle(radius, color, type); /** type (optional) can be (without quotes): "fill" or "solid" (filled), or "line" (lined). */ rectangle(type, color, rotation, radius); /** type (optional) can be (without quotes): "fill" or "solid" (filled), or "line" (lined). rotation (optional) is a number in degress: "0º" (without quotes). radius (optional), must be the last parameter. */ triangle(type, color, "point_1.x point1.y, point_2.x point2.y, point_3.x point3.y") /** type can be (without quotes): "fill" or "solid" (filled), or "line" (lined). */ poly(type, color, "point_1.x point1.y, point_2.x point2.y, ...") /** polygon. type (optional) can be (without quotes): "fill" or "solid" (filled), or "line" (lined). */ icon(name, size) /** icons usually come from font glyphs, size is the font glyph size. For example: icon("quit", 24dp) */ glyph(font_family, font_size, codepoint) /** codepoint can be an integer value, an hex value (hex values start with 0x), or a 1 codepoint string representing glyph character. For example: glyph("monospace", 24dp, "@") */ .. _doxid-cssspecification_1autotoc_md524: string (data-type) ------------------ Read `string `__ documentation. **Differences with documentation:** * Only supports ``"`` (double quote) .. _doxid-cssspecification_1autotoc_md526: string-list (data-type) ----------------------- A set of predefined string value types. Each CSS property will have its own string set specified in the documentation. .. _doxid-cssspecification_1autotoc_md528: vector2-number (data-type) -------------------------- A set of two `number <#number-data-type>`__ s separated by a " " (space), usually representing ``x`` and ``y`` axis in that order. .. _doxid-cssspecification_1autotoc_md530: vector2-length (data-type) -------------------------- A set of two `length <#number-data-type>`__ s separated by a " " (space), usually representing ``x`` and ``y`` axis in that order or also representing ``width`` and ``height``.