Документация
ОС Аврора 5.1.5

QML-тип Theme

Определяет свойства, позволяющие оформить пользовательский интерфейс приложения в стиле ОС Аврора. Подробнее…

Строка импорта: import Sailfish.Silica 1.0

Свойства

Методы

Подробное описание

Объект Theme — это синглтон, всегда существующий в одном экземпляре; тип Theme не допускает создание объектов.

Объект Theme предоставляет информацию о стандартных цветах, шрифтах, размерах, отступах и других составляющих стиля для приложений ОС Аврора. Цвета меняются в соответствии с текущей атмосферой ОС Аврора, а размеры и отступы масштабируются в соответствии с размером и разрешением экрана. Другими словами, Theme помогает добиться того, что графический интерфейс приложения выглядит стандартно для платформы.

Например, Theme.horizontalPageMargin предоставляет стандартный отступ между левым и правым краями страницы и её содержимым. В примере ниже отступ применяется к обеим сторонам метки, поэтому выравнивание происходит не вплотную с краями страницы:

Page {
    Label {
        text: "Vivamus fermentum semper porta. Nunc diam velit, adipiscing ut tristique vitae, sagittis vel odio."
        color: Theme.highlightColor
        x: Theme.horizontalPageMargin
        width: parent.width - x*2   // сделать справа такой же отступ, как слева
        font.pixelSize: Theme.fontSizeSmall
        wrapMode: Text.Wrap
    }
}

Или, если используется простой элемент Text модуля QtQuick, а не Silica Label, то Theme может быть использован для придания Label цвета и шрифта, соответствующих атмосфере:

Text {
    color: Theme.primaryColor
    font.family: Theme.fontFamily
    font.pixelSize: Theme.fontSizeMedium
}

Применение цветовой схемы в стиле ОС Аврора

В ОС Аврора содержимое элементов управления имеет разные цвета. Это сделано для создания визуального отклика при изменении состояния элемента (например, при нажатии кнопки). В компонентах пользовательского интерфейса приложений для ОС Аврора следует применять аналогичную расцветку с помощью объекта Theme.

Применение цветовой схемы к содержимому неинтерактивных элементов

При отображении текста в элементе, который не отвечает на нажатие, к нему применяется цвет Theme.highlightColor или Theme.secondaryHighlightColor для второстепенного текста.

Например:

Page {
    Column {
        x: Theme.horizontalPageMargin
        width: parent.width - x*2   // применить отступ от левого края также к правому краю

        Label {
            text: "Файл: aurora_os_wallpaper.jpg"
            color: Theme.highlightColor     // цвет основного текста
        }
        Label {
            text: "Создано 23-го ноября, 2012"
            color: Theme.secondaryHighlightColor    // цвет второстепенного текста
            font.pixelSize: Theme.fontSizeExtraSmall
        }
    }
}

Применение цветовой схемы к содержимому интерактивных элементов управления

Когда текст отображается в элементе управления, который отвечает на нажатие — например, в таких элементах управления, как ListItem, Button или MouseArea, то к нему применяется цвет Theme.primaryColor, или Theme.secondaryColor для второстепенного текста. Когда элемент управления нажат, то цвет текста изменяется на Theme.highlightColor или Theme.secondaryHighlightColor для второстепенного текста. Кроме того, меняется фон элемента управления — к нему применяется цвет Theme.highlightBackgroundColor с прозрачностью Theme.highlightBackgroundOpacity.

При создании интерактивных элементов пользовательского интерфейса всегда следует использовать BackgroundItem и ListItem, если это возможно, поскольку они имеют свойство highlighted и автоматически подсвечивают фон при нажатии. При изменении стиля элемента при нажатии свойство highlighted будет иметь значение true.

В примере ниже показано применение свойства highlighted для изменения цвета текста внутри элемента управления ListItem:

ListItem {
    id: listItem
    width: parent.width
    contentHeight: Theme.itemSizeMedium

    Column {
        x: Theme.horizontalPageMargin
        width: parent.width - x*2
        anchors.verticalCenter: parent.verticalCenter

        Label {
            text: "File: aurora_os_wallpaper.jpg"
            color: listItem.highlighted ? Theme.highlightColor : Theme.primaryColor  // обновить цвет
        }
        Label {
            text: "Создано 23-го ноября, 2012"
            color: listItem.highlighted ? Theme.secondaryHighlightColor : Theme.secondaryColor  // обновить цвет
            font.pixelSize: Theme.fontSizeExtraSmall
        }
    }

    onClicked: {
        // вызов действия, например, открытие файла
    }
}

При использовании собственных настраиваемых элементов управления MouseArea можно имитировать поведение BackgroundItem и ListItem, применив такие свойства MouseArea pressed и containsMouse. Например, элемент ListItem из предыдущего примера может быть заменен на:

MouseArea {
    id: mouseArea

    property bool highlighted: pressed && containsMouse

    width: parent.width
    height: Theme.itemSizeSmall

    Rectangle {
        anchors.fill: parent
        color: mouseArea.highlighted
               ? Theme.rgba(Theme.highlightBackgroundColor, Theme.highlightBackgroundOpacity)
               : "transparent"
    }

    // Column { ... }
}

Но такая замена не обеспечит точного повторения поведения BackgroundItem и ListItem, поскольку описанные выше элементы управления имеют небольшую задержку при изменении цвета и другие незначительные отличия. Кроме того, ListItem устанавливает свойство highlighted как true, когда его меню menu открыто. Поэтому всегда следует использовать типы Silica, если есть такая возможность.

Настройка размеров элементов списка и их содержимого

Общий шаблон пользовательского интерфейса приложения представляет собой список элементов, где каждый элемент содержит одну или несколько строк текста и, возможно, сопровождается значком слева. В ОС Аврора приложения должны использовать объект Theme для стандартного определения размеров этих компонентов.

Если элемент списка отображает одну строку текста, то:

Если элемент списка отображает две строки текста, то:

  • высота элемента списка равна Theme.itemSizeMedium;
  • размер значка равен Theme.iconSizeMedium;
  • для верхней строки текста используется Theme.fontSizeMedium;
  • для нижней строки текста используется Theme.fontSizeMedium или меньше и применяются дополнительные цвета. Если длина строки слишком длинная, ее следует сократить с помощью свойства TruncationMode.Fade.
  • расстояние между значком и текстом равно Theme.paddingLarge.

Ниже приведён пример элемента списка со значком и двумя строками текста:

ListItem {
    id: listItem
    width: parent.width
    contentHeight: Theme.itemSizeMedium

    Image {
        id: icon
        x: Theme.horizontalPageMargin
        source: "file:///path/to/icon.png"
        anchors.verticalCenter: parent.verticalCenter
        sourceSize.width: Theme.iconSizeMedium
        sourceSize.height: Theme.iconSizeMedium
    }

    Column {
        anchors {
            left: icon.right; leftMargin: Theme.paddingLarge
            right: parent.right; rightMargin: Theme.horizontalPageMargin
            verticalCenter: parent.verticalCenter
        }

        Label {
            text: "Важное письмо"
            color: listItem.highlighted ? Theme.highlightColor : Theme.primaryColor
        }
        Label {
            text: "Vivamus fermentum semper porta. Nunc diam velit, adipiscing ut tristique vitae, sagittis vel odio."
            color: listItem.highlighted ? Theme.secondaryHighlightColor : Theme.secondaryColor
            font.pixelSize: Theme.fontSizeExtraSmall
            width: parent.width
            truncationMode: TruncationMode.Fade
        }
    }
}

Для элементов, которые отображают более двух строк текста, шаблон такой же: использование более крупных значков и, возможно, размеров шрифта, окрашивание незначительного текста второстепенными цветами, разделение значка и текста с помощью Theme.paddingLarge.

См. также Распространённые ошибки при разработке приложений ОС Аврора.

Описание свойств

buttonWidthExtraSmall : real

Свойства, содержащие стандартные размеры кнопок:

  • Theme.buttonWidthTiny — ширина по умолчанию для кнопок с иконками.
  • Theme.buttonWidthExtraSmall — содержит значение ширины самой маленькой кнопки. На экране с портретной ориентацией могут быть размещены три такие кнопки.
  • Theme.buttonWidthSmall — содержит значение ширины маленькой кнопки (используется по умолчанию). На экране с портретной ориентацией могут быть размещены две такие кнопки.
  • Theme.buttonWidthMedium — содержит значение ширины средней кнопки.
  • Theme.buttonWidthLarge — содержит значение ширины большой кнопки. Как правило, на экране с портретной ориентацией может быть размещена только одна большая кнопка.

См. также Button::preferredWidth.

buttonWidthLarge : real

Свойства, содержащие стандартные размеры кнопок:

  • Theme.buttonWidthTiny — ширина по умолчанию для кнопок с иконками.
  • Theme.buttonWidthExtraSmall — содержит значение ширины самой маленькой кнопки. На экране с портретной ориентацией могут быть размещены три такие кнопки.
  • Theme.buttonWidthSmall — содержит значение ширины маленькой кнопки (используется по умолчанию). На экране с портретной ориентацией могут быть размещены две такие кнопки.
  • Theme.buttonWidthMedium — содержит значение ширины средней кнопки.
  • Theme.buttonWidthLarge — содержит значение ширины большой кнопки. Как правило, на экране с портретной ориентацией может быть размещена только одна большая кнопка.

См. также Button::preferredWidth.

buttonWidthMedium : real

Свойства, содержащие стандартные размеры кнопок:

  • Theme.buttonWidthTiny — ширина по умолчанию для кнопок с иконками.
  • Theme.buttonWidthExtraSmall — содержит значение ширины самой маленькой кнопки. На экране с портретной ориентацией могут быть размещены три такие кнопки.
  • Theme.buttonWidthSmall — содержит значение ширины маленькой кнопки (используется по умолчанию). На экране с портретной ориентацией могут быть размещены две такие кнопки.
  • Theme.buttonWidthMedium — содержит значение ширины средней кнопки.
  • Theme.buttonWidthLarge — содержит значение ширины большой кнопки. Как правило, на экране с портретной ориентацией может быть размещена только одна большая кнопка.

См. также Button::preferredWidth.

buttonWidthSmall : real

Свойства, содержащие стандартные размеры кнопок:

  • Theme.buttonWidthTiny — ширина по умолчанию для кнопок с иконками.
  • Theme.buttonWidthExtraSmall — содержит значение ширины самой маленькой кнопки. На экране с портретной ориентацией могут быть размещены три такие кнопки.
  • Theme.buttonWidthSmall — содержит значение ширины маленькой кнопки (используется по умолчанию). На экране с портретной ориентацией могут быть размещены две такие кнопки.
  • Theme.buttonWidthMedium — содержит значение ширины средней кнопки.
  • Theme.buttonWidthLarge — содержит значение ширины большой кнопки. Как правило, на экране с портретной ориентацией может быть размещена только одна большая кнопка.

См. также Button::preferredWidth.

buttonWidthTiny : real

Свойства, содержащие стандартные размеры кнопок:

  • Theme.buttonWidthTiny — ширина по умолчанию для кнопок с иконками.
  • Theme.buttonWidthExtraSmall — содержит значение ширины самой маленькой кнопки. На экране с портретной ориентацией могут быть размещены три такие кнопки.
  • Theme.buttonWidthSmall — содержит значение ширины маленькой кнопки (используется по умолчанию). На экране с портретной ориентацией могут быть размещены две такие кнопки.
  • Theme.buttonWidthMedium — содержит значение ширины средней кнопки.
  • Theme.buttonWidthLarge — содержит значение ширины большой кнопки. Как правило, на экране с портретной ориентацией может быть размещена только одна большая кнопка.

См. также Button::preferredWidth.

colorScheme : enumeration

Цветовая схема. Определяется текущей атмосферой ОС Аврора. Для цветовой схемы DarkOnLight текст и значки раскрашиваются темным цветом на светлом фоне. Для цветовой схемы LightOnDark содержимому подбирается светлые цвета на темном фоне.

Приложения, использующие цвета и значки платформы, адаптируют свой внешний вид под текущую выбранную цветовую схему:

  • Theme.LightOnDark — стиль атмосферы по умолчанию с тёмным фоновым рисунком и светлым содержимым приложений;
  • Theme.DarkOnLight — новый стиль: светлый фоновый рисунок с тёмным содержимым приложений.
coverSizeHorizontal : size

Свойства, содержащие стандартные размеры обложки:

  • Theme.coverSizeVertical — размер обложки приложения в вертикальной ориентации.
  • Theme.coverSizeHorizontal — размер обложки приложения в горизонтальной ориентации.
coverSizeVertical : size

Свойства, содержащие стандартные размеры обложки:

  • Theme.coverSizeVertical — размер обложки приложения в вертикальной ориентации.
  • Theme.coverSizeHorizontal — размер обложки приложения в горизонтальной ориентации.
darkPrimaryColor : color

Основные и вспомогательные цвета определяются текущей атмосферой и подбираются таким образом, чтобы сочетаться с фоновым рисунком атмосферы. Цвета по умолчанию Theme.primaryColor и Theme.secondaryColor не всегда могут быть уместны, если в приложении используется нестандартный фоновый рисунок. Если в приложении используется светлый фоновый рисунок, (например, текстовый документ), рекомендуется использовать цвета Theme.darkPrimaryColor и Theme.darkSecondaryColor. Если в приложении используется тёмный фоновый рисунок, (например, видеопроигрыватель), рекомендуется использовать цвета Theme.lightPrimaryColor и Theme.lightSecondaryColor.

darkSecondaryColor : color

Основные и вспомогательные цвета определяются текущей атмосферой и подбираются таким образом, чтобы сочетаться с фоновым рисунком атмосферы. Цвета по умолчанию Theme.primaryColor и Theme.secondaryColor не всегда могут быть уместны, если в приложении используется нестандартный фоновый рисунок. Если в приложении используется светлый фоновый рисунок, (например, текстовый документ), рекомендуется использовать цвета Theme.darkPrimaryColor и Theme.darkSecondaryColor. Если в приложении используется тёмный фоновый рисунок, (например, видеопроигрыватель), рекомендуется использовать цвета Theme.lightPrimaryColor и Theme.lightSecondaryColor.

errorColor : color

Используется для обозначения ошибок в компонентах.

flickDeceleration : real

Свойства, содержащие параметры прокрутки списков в стиле ОС Аврора, которые не зависят от разрешения экрана. К этим свойствам не следует обращаться напрямую, если приложение использует представления SilicaFlickable, SilicaListView, SilicaGridView или SilicaWebView.

  • Theme.flickDeceleration — содержит значение, равное замедлению скорости свободной прокрутки списка после завершения жеста;
  • Theme.maximumFlickVelocity — содержит значение, соответствующее максимальной скорости прокрутки списка.
fontFamily : string

В пользовательском интерфейсе ОС Аврора используются стандартные шрифты:

  • Theme.fontFamily — шрифт по умолчанию;
  • Theme.fontFamilyHeading — шрифт для отображения текста заголовка.
  • Theme.fontFamilyPassword — шрифт с отдельными символами (например, O и 0 или I и l) для паролей.
fontFamilyHeading : string

В пользовательском интерфейсе ОС Аврора используются стандартные шрифты:

  • Theme.fontFamily — шрифт по умолчанию;
  • Theme.fontFamilyHeading — шрифт для отображения текста заголовка.
  • Theme.fontFamilyPassword — шрифт с отдельными символами (например, O и 0 или I и l) для паролей.
fontSizeExtraLarge : int

Свойства, содержащие стандартные размеры шрифта:

  • Theme.fontSizeTiny — самый маленький рекомендованный размер шрифта, который используется для отображения второстепенного текста в случаях, когда место под него строго ограничено;
  • Theme.fontSizeExtraSmall — размер шрифта, который используется для более мелкого второстепенного текста (например, для текста описания в TextSwitch и ValueButton);
  • Theme.fontSizeSmall — размер шрифта, который используется для второстепенного текста или для параграфов;
  • Theme.fontSizeMedium — размер шрифта, который является наиболее распространённым размером текста (используется по умолчанию для типов Label, а также для большинства элементов пользовательского интерфейса);
  • Theme.fontSizeLarge — размер шрифта, который можно использовать для стандартных заголовков (например, для заголовков страниц в компонентах PageHeader и ViewPlaceholder);
  • Theme.fontSizeExtraLarge — более крупный размер шрифта для заголовков;
  • Theme.fontSizeHuge — размер шрифта, который используется для самых больших заголовков или для компонентов пользовательского интерфейса, в которых текст играет определяющую роль (например, цифровая клавиатура телефона).
fontSizeExtraLargeBase : int

Свойства, содержащие базовые значения стандартного размера шрифта, которые не зависят от коэффициента размера шрифта, задаваемого пользователем в настройках системы. В большинстве случаев следует избегать использования базовых значений для размера шрифтов. Базовые значения могут быть уместны только тогда, когда пространство для текстовой метки существенно ограничено, а предпочтительные варианты обхода таких ограничений (например, перенос текста на новую строку) не дают полностью удовлетворительных результатов.

fontSizeExtraSmall : int

Свойства, содержащие стандартные размеры шрифта:

  • Theme.fontSizeTiny — самый маленький рекомендованный размер шрифта, который используется для отображения второстепенного текста в случаях, когда место под него строго ограничено;
  • Theme.fontSizeExtraSmall — размер шрифта, который используется для более мелкого второстепенного текста (например, для текста описания в TextSwitch и ValueButton);
  • Theme.fontSizeSmall — размер шрифта, который используется для второстепенного текста или для параграфов;
  • Theme.fontSizeMedium — размер шрифта, который является наиболее распространённым размером текста (используется по умолчанию для типов Label, а также для большинства элементов пользовательского интерфейса);
  • Theme.fontSizeLarge — размер шрифта, который можно использовать для стандартных заголовков (например, для заголовков страниц в компонентах PageHeader и ViewPlaceholder);
  • Theme.fontSizeExtraLarge — более крупный размер шрифта для заголовков;
  • Theme.fontSizeHuge — размер шрифта, который используется для самых больших заголовков или для компонентов пользовательского интерфейса, в которых текст играет определяющую роль (например, цифровая клавиатура телефона).
fontSizeExtraSmallBase : int

Свойства, содержащие базовые значения стандартного размера шрифта, которые не зависят от коэффициента размера шрифта, задаваемого пользователем в настройках системы. В большинстве случаев следует избегать использования базовых значений для размера шрифтов. Базовые значения могут быть уместны только тогда, когда пространство для текстовой метки существенно ограничено, а предпочтительные варианты обхода таких ограничений (например, перенос текста на новую строку) не дают полностью удовлетворительных результатов.

fontSizeHuge : int

Свойства, содержащие стандартные размеры шрифта:

  • Theme.fontSizeTiny — самый маленький рекомендованный размер шрифта, который используется для отображения второстепенного текста в случаях, когда место под него строго ограничено;
  • Theme.fontSizeExtraSmall — размер шрифта, который используется для более мелкого второстепенного текста (например, для текста описания в TextSwitch и ValueButton);
  • Theme.fontSizeSmall — размер шрифта, который используется для второстепенного текста или для параграфов;
  • Theme.fontSizeMedium — размер шрифта, который является наиболее распространённым размером текста (используется по умолчанию для типов Label, а также для большинства элементов пользовательского интерфейса);
  • Theme.fontSizeLarge — размер шрифта, который можно использовать для стандартных заголовков (например, для заголовков страниц в компонентах PageHeader и ViewPlaceholder);
  • Theme.fontSizeExtraLarge — более крупный размер шрифта для заголовков;
  • Theme.fontSizeHuge — размер шрифта, который используется для самых больших заголовков или для компонентов пользовательского интерфейса, в которых текст играет определяющую роль (например, цифровая клавиатура телефона).
fontSizeHugeBase : int

Свойства, содержащие базовые значения стандартного размера шрифта, которые не зависят от коэффициента размера шрифта, задаваемого пользователем в настройках системы. В большинстве случаев следует избегать использования базовых значений для размера шрифтов. Базовые значения могут быть уместны только тогда, когда пространство для текстовой метки существенно ограничено, а предпочтительные варианты обхода таких ограничений (например, перенос текста на новую строку) не дают полностью удовлетворительных результатов.

fontSizeLarge : int

Свойства, содержащие стандартные размеры шрифта:

  • Theme.fontSizeTiny — самый маленький рекомендованный размер шрифта, который используется для отображения второстепенного текста в случаях, когда место под него строго ограничено;
  • Theme.fontSizeExtraSmall — размер шрифта, который используется для более мелкого второстепенного текста (например, для текста описания в TextSwitch и ValueButton);
  • Theme.fontSizeSmall — размер шрифта, который используется для второстепенного текста или для параграфов;
  • Theme.fontSizeMedium — размер шрифта, который является наиболее распространённым размером текста (используется по умолчанию для типов Label, а также для большинства элементов пользовательского интерфейса);
  • Theme.fontSizeLarge — размер шрифта, который можно использовать для стандартных заголовков (например, для заголовков страниц в компонентах PageHeader и ViewPlaceholder);
  • Theme.fontSizeExtraLarge — более крупный размер шрифта для заголовков;
  • Theme.fontSizeHuge — размер шрифта, который используется для самых больших заголовков или для компонентов пользовательского интерфейса, в которых текст играет определяющую роль (например, цифровая клавиатура телефона).
fontSizeLargeBase : int

Свойства, содержащие базовые значения стандартного размера шрифта, которые не зависят от коэффициента размера шрифта, задаваемого пользователем в настройках системы. В большинстве случаев следует избегать использования базовых значений для размера шрифтов. Базовые значения могут быть уместны только тогда, когда пространство для текстовой метки существенно ограничено, а предпочтительные варианты обхода таких ограничений (например, перенос текста на новую строку) не дают полностью удовлетворительных результатов.

fontSizeMedium : int

Свойства, содержащие стандартные размеры шрифта:

  • Theme.fontSizeTiny — самый маленький рекомендованный размер шрифта, который используется для отображения второстепенного текста в случаях, когда место под него строго ограничено;
  • Theme.fontSizeExtraSmall — размер шрифта, который используется для более мелкого второстепенного текста (например, для текста описания в TextSwitch и ValueButton);
  • Theme.fontSizeSmall — размер шрифта, который используется для второстепенного текста или для параграфов;
  • Theme.fontSizeMedium — размер шрифта, который является наиболее распространённым размером текста (используется по умолчанию для типов Label, а также для большинства элементов пользовательского интерфейса);
  • Theme.fontSizeLarge — размер шрифта, который можно использовать для стандартных заголовков (например, для заголовков страниц в компонентах PageHeader и ViewPlaceholder);
  • Theme.fontSizeExtraLarge — более крупный размер шрифта для заголовков;
  • Theme.fontSizeHuge — размер шрифта, который используется для самых больших заголовков или для компонентов пользовательского интерфейса, в которых текст играет определяющую роль (например, цифровая клавиатура телефона).
fontSizeMediumBase : int

Свойства, содержащие базовые значения стандартного размера шрифта, которые не зависят от коэффициента размера шрифта, задаваемого пользователем в настройках системы. В большинстве случаев следует избегать использования базовых значений для размера шрифтов. Базовые значения могут быть уместны только тогда, когда пространство для текстовой метки существенно ограничено, а предпочтительные варианты обхода таких ограничений (например, перенос текста на новую строку) не дают полностью удовлетворительных результатов.

fontSizeSmall : int

Свойства, содержащие стандартные размеры шрифта:

  • Theme.fontSizeTiny — самый маленький рекомендованный размер шрифта, который используется для отображения второстепенного текста в случаях, когда место под него строго ограничено;
  • Theme.fontSizeExtraSmall — размер шрифта, который используется для более мелкого второстепенного текста (например, для текста описания в TextSwitch и ValueButton);
  • Theme.fontSizeSmall — размер шрифта, который используется для второстепенного текста или для параграфов;
  • Theme.fontSizeMedium — размер шрифта, который является наиболее распространённым размером текста (используется по умолчанию для типов Label, а также для большинства элементов пользовательского интерфейса);
  • Theme.fontSizeLarge — размер шрифта, который можно использовать для стандартных заголовков (например, для заголовков страниц в компонентах PageHeader и ViewPlaceholder);
  • Theme.fontSizeExtraLarge — более крупный размер шрифта для заголовков;
  • Theme.fontSizeHuge — размер шрифта, который используется для самых больших заголовков или для компонентов пользовательского интерфейса, в которых текст играет определяющую роль (например, цифровая клавиатура телефона).
fontSizeSmallBase : int

Свойства, содержащие базовые значения стандартного размера шрифта, которые не зависят от коэффициента размера шрифта, задаваемого пользователем в настройках системы. В большинстве случаев следует избегать использования базовых значений для размера шрифтов. Базовые значения могут быть уместны только тогда, когда пространство для текстовой метки существенно ограничено, а предпочтительные варианты обхода таких ограничений (например, перенос текста на новую строку) не дают полностью удовлетворительных результатов.

fontSizeTiny : int

Свойства, содержащие стандартные размеры шрифта:

  • Theme.fontSizeTiny — самый маленький рекомендованный размер шрифта, который используется для отображения второстепенного текста в случаях, когда место под него строго ограничено;
  • Theme.fontSizeExtraSmall — размер шрифта, который используется для более мелкого второстепенного текста (например, для текста описания в TextSwitch и ValueButton);
  • Theme.fontSizeSmall — размер шрифта, который используется для второстепенного текста или для параграфов;
  • Theme.fontSizeMedium — размер шрифта, который является наиболее распространённым размером текста (используется по умолчанию для типов Label, а также для большинства элементов пользовательского интерфейса);
  • Theme.fontSizeLarge — размер шрифта, который можно использовать для стандартных заголовков (например, для заголовков страниц в компонентах PageHeader и ViewPlaceholder);
  • Theme.fontSizeExtraLarge — более крупный размер шрифта для заголовков;
  • Theme.fontSizeHuge — размер шрифта, который используется для самых больших заголовков или для компонентов пользовательского интерфейса, в которых текст играет определяющую роль (например, цифровая клавиатура телефона).
fontSizeTinyBase : int

Свойства, содержащие базовые значения стандартного размера шрифта, которые не зависят от коэффициента размера шрифта, задаваемого пользователем в настройках системы. В большинстве случаев следует избегать использования базовых значений для размера шрифтов. Базовые значения могут быть уместны только тогда, когда пространство для текстовой метки существенно ограничено, а предпочтительные варианты обхода таких ограничений (например, перенос текста на новую строку) не дают полностью удовлетворительных результатов.

highlightBackgroundColor : color

Свойства, содержащие стандартные цвета для отображения фона выделенного элемента в соответствии с текущей атмосферой ОС Аврора:

  • Theme.highlightBackgroundColor — цвет, который используется для окрашивания фона выделенного текста;
  • Theme.highlightBackgroundOpacity — значение непрозрачности для фона выделенного текста.

Непрозрачность обычно применяется к цвету при помощи метода rgba():

MouseArea {
    id: mouseArea
    anchors.fill: parent

    Rectangle {
        anchors.fill: parent
        color: mouseArea.pressed && mouseArea.containsMouse
               ? Theme.rgba(Theme.highlightBackgroundColor, Theme.highlightBackgroundOpacity)
               : "transparent"
    }
}

Это позволяет избежать отдельно настройки непрозрачности (свойство opacity) прямоугольника, что было бы проблематичным, если бы прямоугольник имел дочерние элементы, для которых не должна применяться прозрачность.

highlightBackgroundOpacity : color

Свойства, содержащие стандартные цвета для отображения фона выделенного элемента в соответствии с текущей атмосферой ОС Аврора:

  • Theme.highlightBackgroundColor — цвет, который используется для окрашивания фона выделенного текста;
  • Theme.highlightBackgroundOpacity — значение непрозрачности для фона текста, выделенного цветом highlightBackgroundColor.

Непрозрачность обычно применяется к цвету при помощи метода rgba():

MouseArea {
    id: mouseArea
    anchors.fill: parent

    Rectangle {
        anchors.fill: parent
        color: mouseArea.pressed && mouseArea.containsMouse
               ? Theme.rgba(Theme.highlightBackgroundColor, Theme.highlightBackgroundOpacity)
               : "transparent"
    }
}

Это позволяет избежать отдельно настройки непрозрачности (свойство opacity) прямоугольника, что было бы проблематичным, если бы прямоугольник имел дочерние элементы, для которых не должна применяться прозрачность.

highlightColor : color

Свойства, содержащие стандартные цвета в соответствии с текущей атмосферой ОС Аврора:

  • Theme.primaryColor — цвет, который обычно используется для того, чтобы подчеркнуть активные элементы пользовательского интерфейса;
  • Theme.secondaryColor — цвет, который обычно используется для отрисовки менее значимых частей пользовательского интерфейса;
  • Theme.highlightColor — основной цвет для неинтерактивного текста, а также для подсветки элементов при нажатии на них.
  • Theme.secondaryHighlightColor — второстепенный цвет, используемый для подсвечивания менее значимых элементов пользовательского интерфейса.
  • Theme.highlightDimmerColor — основной цвет с более темным оттенком, который используется в случаях, когда нужно подсветить элемент, но при этом не отвлекать внимание от более значимых элементов.

Второстепенные цвета следует применять для любых текстов и значков, которые по своей сути являются лишь вспомогательными элементами интерфейса и, следовательно, не должны привлекать на себя основное внимание пользователя. Например, текст заполнителя для типа TextField окрашивается цветом Theme.secondaryColor (фон получает аналогичный второстепенный цвет, когда текстовое поле получает фокус).

highlightDimmerColor : color

Свойства, содержащие стандартные цвета в соответствии с текущей атмосферой ОС Аврора:

  • Theme.primaryColor — цвет, который обычно используется для того, чтобы подчеркнуть активные элементы пользовательского интерфейса;
  • Theme.secondaryColor — цвет, который обычно используется для отрисовки менее значимых частей пользовательского интерфейса;
  • Theme.highlightColor — основной цвет для неинтерактивного текста, а также для подсветки элементов при нажатии на них.
  • Theme.secondaryHighlightColor — второстепенный цвет, используемый для подсвечивания менее значимых элементов пользовательского интерфейса.
  • Theme.highlightDimmerColor — основной цвет с более темным оттенком, который используется в случаях, когда нужно подсветить элемент, но при этом не отвлекать внимание от более значимых элементов.

Второстепенные цвета следует применять для любых текстов и значков, которые по своей сути являются лишь вспомогательными элементами интерфейса и, следовательно, не должны привлекать на себя основное внимание пользователя. Например, текст заполнителя для типа TextField окрашивается цветом Theme.secondaryColor (фон получает аналогичный второстепенный цвет, когда текстовое поле получает фокус).

horizontalPageMargin : real

Свойства, содержащие стандартные отступы:

  • Theme.paddingSmall — отступ, который равен самому маленькому расстоянию между элементами пользовательского интерфейса (часто используется в случаях, когда место на экране ограничено);
  • Theme.paddingMedium — отступ, который используется для установки расстояния между элементами интерфейса, которые связаны друг с другом по смыслу и поэтому визуально должны быть вместе;
  • Theme.paddingLarge — отступ, который обычно используется для установки расстояния между элементами интерфейса (часто используется в качестве вертикального интервала между компонентами в контейнере типа Column);
  • Theme.paddingCover — отступ, который рекомендуется между содержимым обложки и рамкой обложки.
  • Theme.horizontalPageMargin — отступ, который используется для установки расстояния между содержимым страницы и левым и правым краями экрана. Обычно это значение равно Theme.paddingLarge на устройствах с маленькими экранами (смартфоны), но может быть шире на устройствах с большими экранами (планшеты).

Отступы от левого и правого краев экрана следует устанавливать равными Theme.horizontalPageMargin.

iconSizeExtraLarge : real

Свойства, содержащие стандартные размеры значков:

  • Theme.iconSizeExtraSmall — самый маленький размер, который используется, например, для значков в строке состояния;
  • Theme.iconSizeSmall — размер, который используется для маленьких значков, например, для значков CoverAction и значков на экране событий;
  • Theme.iconSizeSmallPlus — чуть больший вариант iconSizeSmall, который используется, например, для значков уведомлений;
  • Theme.iconSizeMedium — самый часто используемый размер (может быть применен, например, для значков внутри маленьких и средних элементов списка);
  • Theme.iconSizeLarge — большой размер, который используется, например, для значков на кнопках;
  • Theme.iconSizeExtraLarge — самый большой размер значков;
  • Theme.iconSizeLauncher — размер, который используется для значков в сетке приложений на домашнем экране.

Значки платформы, к которым осуществляется доступ с помощью синтаксиса "image://theme/icon-[s/m/l]-iconname", также соответствуют размерам значков: маленькие значки начинаются с префикса "icon-s-", средние значки — с префикса "icon-m-" и большие значки — с префикса "icon-l-".

Все монохромные значки должны раскрашиваться аналогичным образом используя те же стили для текста, описанные в разделе Применение цветовой схемы в стиле ОС Аврора. Чтобы раскрасить монохромные значки, в конец URI следует добавить постфикс "?<color>":

ListItem {
    id: listItem
    width: parent.width
    height: Theme.itemSizeSmall

    Image {
        source: "image://theme/icon-s-iconname"
            + (listItem.highlighted ? "?" + Theme.highlightColor : "")
    }
}
iconSizeExtraSmall : real

Свойства, содержащие стандартные размеры значков:

  • Theme.iconSizeExtraSmall — самый маленький размер, который используется, например, для значков в строке состояния;
  • Theme.iconSizeSmall — размер, который используется для маленьких значков, например, для значков CoverAction и значков на экране событий;
  • Theme.iconSizeSmallPlus — чуть больший вариант iconSizeSmall, который используется, например, для значков уведомлений;
  • Theme.iconSizeMedium — самый часто используемый размер (может быть применен, например, для значков внутри маленьких и средних элементов списка);
  • Theme.iconSizeLarge — большой размер, который используется, например, для значков на кнопках;
  • Theme.iconSizeExtraLarge — самый большой размер значков;
  • Theme.iconSizeLauncher — размер, который используется для значков в сетке приложений на домашнем экране.

Значки платформы, к которым осуществляется доступ с помощью синтаксиса "image://theme/icon-[s/m/l]-iconname", также соответствуют размерам значков: маленькие значки начинаются с префикса "icon-s-", средние значки — с префикса "icon-m-" и большие значки — с префикса "icon-l-".

Все монохромные значки должны раскрашиваться аналогичным образом используя те же стили для текста, описанные в разделе Применение цветовой схемы в стиле ОС Аврора. Чтобы раскрасить монохромные значки, в конец URI следует добавить постфикс "?<color>":

ListItem {
    id: listItem
    width: parent.width
    height: Theme.itemSizeSmall

    Image {
        source: "image://theme/icon-s-iconname"
            + (listItem.highlighted ? "?" + Theme.highlightColor : "")
    }
}
iconSizeLarge : real

Свойства, содержащие стандартные размеры значков:

  • Theme.iconSizeExtraSmall — самый маленький размер, который используется, например, для значков в строке состояния;
  • Theme.iconSizeSmall — размер, который используется для маленьких значков, например, для значков CoverAction и значков на экране событий;
  • Theme.iconSizeSmallPlus — чуть больший вариант iconSizeSmall, который используется, например, для значков уведомлений;
  • Theme.iconSizeMedium — самый часто используемый размер (может быть применен, например, для значков внутри маленьких и средних элементов списка);
  • Theme.iconSizeLarge — большой размер, который используется, например, для значков на кнопках;
  • Theme.iconSizeExtraLarge — самый большой размер значков;
  • Theme.iconSizeLauncher — размер, который используется для значков в сетке приложений на домашнем экране.

Значки платформы, к которым осуществляется доступ с помощью синтаксиса "image://theme/icon-[s/m/l]-iconname", также соответствуют размерам значков: маленькие значки начинаются с префикса "icon-s-", средние значки — с префикса "icon-m-" и большие значки — с префикса "icon-l-".

Все монохромные значки должны раскрашиваться аналогичным образом используя те же стили для текста, описанные в разделе Применение цветовой схемы в стиле ОС Аврора. Чтобы раскрасить монохромные значки, в конец URI следует добавить постфикс "?<color>":

ListItem {
    id: listItem
    width: parent.width
    height: Theme.itemSizeSmall

    Image {
        source: "image://theme/icon-s-iconname"
            + (listItem.highlighted ? "?" + Theme.highlightColor : "")
    }
}
iconSizeLauncher : real

Свойства, содержащие стандартные размеры значков:

  • Theme.iconSizeExtraSmall — самый маленький размер, который используется, например, для значков в строке состояния;
  • Theme.iconSizeSmall — размер, который используется для маленьких значков, например, для значков CoverAction и значков на экране событий;
  • Theme.iconSizeSmallPlus — чуть больший вариант iconSizeSmall, который используется, например, для значков уведомлений;
  • Theme.iconSizeMedium — самый часто используемый размер (может быть применен, например, для значков внутри маленьких и средних элементов списка);
  • Theme.iconSizeLarge — большой размер, который используется, например, для значков на кнопках;
  • Theme.iconSizeExtraLarge — самый большой размер значков;
  • Theme.iconSizeLauncher — размер, который используется для значков в сетке приложений на домашнем экране.

Значки платформы, к которым осуществляется доступ с помощью синтаксиса "image://theme/icon-[s/m/l]-iconname", также соответствуют размерам значков: маленькие значки начинаются с префикса "icon-s-", средние значки — с префикса "icon-m-" и большие значки — с префикса "icon-l-".

Все монохромные значки должны раскрашиваться аналогичным образом используя те же стили для текста, описанные в разделе Применение цветовой схемы в стиле ОС Аврора. Чтобы раскрасить монохромные значки, в конец URI следует добавить постфикс "?<color>":

ListItem {
    id: listItem
    width: parent.width
    height: Theme.itemSizeSmall

    Image {
        source: "image://theme/icon-s-iconname"
            + (listItem.highlighted ? "?" + Theme.highlightColor : "")
    }
}
iconSizeMedium : real

Свойства, содержащие стандартные размеры значков:

  • Theme.iconSizeExtraSmall — самый маленький размер, который используется, например, для значков в строке состояния;
  • Theme.iconSizeSmall — размер, который используется для маленьких значков, например, для значков CoverAction и значков на экране событий;
  • Theme.iconSizeSmallPlus — чуть больший вариант iconSizeSmall, который используется, например, для значков уведомлений;
  • Theme.iconSizeMedium — самый часто используемый размер (может быть применен, например, для значков внутри маленьких и средних элементов списка);
  • Theme.iconSizeLarge — большой размер, который используется, например, для значков на кнопках;
  • Theme.iconSizeExtraLarge — самый большой размер значков;
  • Theme.iconSizeLauncher — размер, который используется для значков в сетке приложений на домашнем экране.

Значки платформы, к которым осуществляется доступ с помощью синтаксиса "image://theme/icon-[s/m/l]-iconname", также соответствуют размерам значков: маленькие значки начинаются с префикса "icon-s-", средние значки — с префикса "icon-m-" и большие значки — с префикса "icon-l-".

Все монохромные значки должны раскрашиваться аналогичным образом используя те же стили для текста, описанные в разделе Применение цветовой схемы в стиле ОС Аврора. Чтобы раскрасить монохромные значки, в конец URI следует добавить постфикс "?<color>":

ListItem {
    id: listItem
    width: parent.width
    height: Theme.itemSizeSmall

    Image {
        source: "image://theme/icon-s-iconname"
            + (listItem.highlighted ? "?" + Theme.highlightColor : "")
    }
}
iconSizeSmall : real

Свойства, содержащие стандартные размеры значков:

  • Theme.iconSizeExtraSmall — самый маленький размер, который используется, например, для значков в строке состояния;
  • Theme.iconSizeSmall — размер, который используется для маленьких значков, например, для значков CoverAction и значков на экране событий;
  • Theme.iconSizeSmallPlus — чуть больший вариант iconSizeSmall, который используется, например, для значков уведомлений;
  • Theme.iconSizeMedium — самый часто используемый размер (может быть применен, например, для значков внутри маленьких и средних элементов списка);
  • Theme.iconSizeLarge — большой размер, который используется, например, для значков на кнопках;
  • Theme.iconSizeExtraLarge — самый большой размер значков;
  • Theme.iconSizeLauncher — размер, который используется для значков в сетке приложений на домашнем экране.

Значки платформы, к которым осуществляется доступ с помощью синтаксиса "image://theme/icon-[s/m/l]-iconname", также соответствуют размерам значков: маленькие значки начинаются с префикса "icon-s-", средние значки — с префикса "icon-m-" и большие значки — с префикса "icon-l-".

Все монохромные значки должны раскрашиваться аналогичным образом используя те же стили для текста, описанные в разделе Применение цветовой схемы в стиле ОС Аврора. Чтобы раскрасить монохромные значки, в конец URI следует добавить постфикс "?<color>":

ListItem {
    id: listItem
    width: parent.width
    height: Theme.itemSizeSmall

    Image {
        source: "image://theme/icon-s-iconname"
            + (listItem.highlighted ? "?" + Theme.highlightColor : "")
    }
}
iconSizeSmallPlus : real

Свойства, содержащие стандартные размеры значков:

  • Theme.iconSizeExtraSmall — самый маленький размер, который используется, например, для значков в строке состояния;
  • Theme.iconSizeSmall — размер, который используется для маленьких значков, например, для значков CoverAction и значков на экране событий;
  • Theme.iconSizeSmallPlus — чуть больший вариант iconSizeSmall, который используется, например, для значков уведомлений;
  • Theme.iconSizeMedium — самый часто используемый размер (может быть применен, например, для значков внутри маленьких и средних элементов списка);
  • Theme.iconSizeLarge — большой размер, который используется, например, для значков на кнопках;
  • Theme.iconSizeExtraLarge — самый большой размер значков;
  • Theme.iconSizeLauncher — размер, который используется для значков в сетке приложений на домашнем экране.

Значки платформы, к которым осуществляется доступ с помощью синтаксиса "image://theme/icon-[s/m/l]-iconname", также соответствуют размерам значков: маленькие значки начинаются с префикса "icon-s-", средние значки — с префикса "icon-m-" и большие значки — с префикса "icon-l-".

Все монохромные значки должны раскрашиваться аналогичным образом используя те же стили для текста, описанные в разделе Применение цветовой схемы в стиле ОС Аврора. Чтобы раскрасить монохромные значки, в конец URI следует добавить постфикс "?<color>":

ListItem {
    id: listItem
    width: parent.width
    height: Theme.itemSizeSmall

    Image {
        source: "image://theme/icon-s-iconname"
            + (listItem.highlighted ? "?" + Theme.highlightColor : "")
    }
}
itemSizeExtraLarge : real

Свойства, содержащие стандартные размеры элементов:

  • Theme.itemSizeExtraSmall — размер, который подходит для самых маленьких элементов управления пользовательского интерфейса (используется как высота кнопок и записей в меню);
  • Theme.itemSizeSmall — размер, который подходит для небольших элементов управления пользовательского интерфейса (используется как высота элементов списка с одной строкой текста);
  • Theme.itemSizeMedium — размер, который подходит для средних размеров элементов управления пользовательского интерфейса (используется как высота элементов списка с двумя строками текста);
  • Theme.itemSizeLarge — размер, который подходит для элементов управления с несколькими строками текста или с более заметным текстом (используется, например, в качестве высоты стандартного элемента заголовка страницы в книжной ориентации);
  • Theme.itemSizeExtraLarge — размер, который подходит для более крупных элементов управления, таких как делегаты списка с миниатюрой изображения и связанной информацией об этом изображении;
  • Theme.itemSizeHuge — размер, который подходит для более крупных элементов управления, таких как миниатюры изображений, расположенные в виде сетки во всю ширину экрана.
itemSizeExtraSmall : real

Свойства, содержащие стандартные размеры элементов:

  • Theme.itemSizeExtraSmall — размер, который подходит для самых маленьких элементов управления пользовательского интерфейса (используется как высота кнопок и записей в меню);
  • Theme.itemSizeSmall — размер, который подходит для небольших элементов управления пользовательского интерфейса (используется как высота элементов списка с одной строкой текста);
  • Theme.itemSizeMedium — размер, который подходит для средних размеров элементов управления пользовательского интерфейса (используется как высота элементов списка с двумя строками текста);
  • Theme.itemSizeLarge — размер, который подходит для элементов управления с несколькими строками текста или с более заметным текстом (используется, например, в качестве высоты стандартного элемента заголовка страницы в книжной ориентации);
  • Theme.itemSizeExtraLarge — размер, который подходит для более крупных элементов управления, таких как делегаты списка с миниатюрой изображения и связанной информацией об этом изображении;
  • Theme.itemSizeHuge — размер, который подходит для более крупных элементов управления, таких как миниатюры изображений, расположенные в виде сетки во всю ширину экрана.
itemSizeHuge : real

Свойства, содержащие стандартные размеры элементов:

  • Theme.itemSizeExtraSmall — размер, который подходит для самых маленьких элементов управления пользовательского интерфейса (используется как высота кнопок и записей в меню);
  • Theme.itemSizeSmall — размер, который подходит для небольших элементов управления пользовательского интерфейса (используется как высота элементов списка с одной строкой текста);
  • Theme.itemSizeMedium — размер, который подходит для средних размеров элементов управления пользовательского интерфейса (используется как высота элементов списка с двумя строками текста);
  • Theme.itemSizeLarge — размер, который подходит для элементов управления с несколькими строками текста или с более заметным текстом (используется, например, в качестве высоты стандартного элемента заголовка страницы в книжной ориентации);
  • Theme.itemSizeExtraLarge — размер, который подходит для более крупных элементов управления, таких как делегаты списка с миниатюрой изображения и связанной информацией об этом изображении;
  • Theme.itemSizeHuge — размер, который подходит для более крупных элементов управления, таких как миниатюры изображений, расположенные в виде сетки во всю ширину экрана.
itemSizeLarge : real

Свойства, содержащие стандартные размеры элементов:

  • Theme.itemSizeExtraSmall — размер, который подходит для самых маленьких элементов управления пользовательского интерфейса (используется как высота кнопок и записей в меню);
  • Theme.itemSizeSmall — размер, который подходит для небольших элементов управления пользовательского интерфейса (используется как высота элементов списка с одной строкой текста);
  • Theme.itemSizeMedium — размер, который подходит для средних размеров элементов управления пользовательского интерфейса (используется как высота элементов списка с двумя строками текста);
  • Theme.itemSizeLarge — размер, который подходит для элементов управления с несколькими строками текста или с более заметным текстом (используется, например, в качестве высоты стандартного элемента заголовка страницы в книжной ориентации);
  • Theme.itemSizeExtraLarge — размер, который подходит для более крупных элементов управления, таких как делегаты списка с миниатюрой изображения и связанной информацией об этом изображении;
  • Theme.itemSizeHuge — размер, который подходит для более крупных элементов управления, таких как миниатюры изображений, расположенные в виде сетки во всю ширину экрана.
itemSizeMedium : real

Свойства, содержащие стандартные размеры элементов:

  • Theme.itemSizeExtraSmall — размер, который подходит для самых маленьких элементов управления пользовательского интерфейса (используется как высота кнопок и записей в меню);
  • Theme.itemSizeSmall — размер, который подходит для небольших элементов управления пользовательского интерфейса (используется как высота элементов списка с одной строкой текста);
  • Theme.itemSizeMedium — размер, который подходит для средних размеров элементов управления пользовательского интерфейса (используется как высота элементов списка с двумя строками текста);
  • Theme.itemSizeLarge — размер, который подходит для элементов управления с несколькими строками текста или с более заметным текстом (используется, например, в качестве высоты стандартного элемента заголовка страницы в книжной ориентации);
  • Theme.itemSizeExtraLarge — размер, который подходит для более крупных элементов управления, таких как делегаты списка с миниатюрой изображения и связанной информацией об этом изображении;
  • Theme.itemSizeHuge — размер, который подходит для более крупных элементов управления, таких как миниатюры изображений, расположенные в виде сетки во всю ширину экрана.
itemSizeSmall : real

Свойства, содержащие стандартные размеры элементов:

  • Theme.itemSizeExtraSmall — размер, который подходит для самых маленьких элементов управления пользовательского интерфейса (используется как высота кнопок и записей в меню);
  • Theme.itemSizeSmall — размер, который подходит для небольших элементов управления пользовательского интерфейса (используется как высота элементов списка с одной строкой текста);
  • Theme.itemSizeMedium — размер, который подходит для средних размеров элементов управления пользовательского интерфейса (используется как высота элементов списка с двумя строками текста);
  • Theme.itemSizeLarge — размер, который подходит для элементов управления с несколькими строками текста или с более заметным текстом (используется, например, в качестве высоты стандартного элемента заголовка страницы в книжной ориентации);
  • Theme.itemSizeExtraLarge — размер, который подходит для более крупных элементов управления, таких как делегаты списка с миниатюрой изображения и связанной информацией об этом изображении;
  • Theme.itemSizeHuge — размер, который подходит для более крупных элементов управления, таких как миниатюры изображений, расположенные в виде сетки во всю ширину экрана.
lightPrimaryColor : color

Основные и вспомогательные цвета определяются текущей атмосферой и подбираются таким образом, чтобы сочетаться с фоновым рисунком атмосферы. Цвета по умолчанию Theme.primaryColor и Theme.secondaryColor не всегда могут быть уместны, если в приложении используется нестандартный фоновый рисунок. Если в приложении используется светлый фоновый рисунок, (например, текстовый документ), рекомендуется использовать цвета Theme.darkPrimaryColor и Theme.darkSecondaryColor. Если в приложении используется тёмный фоновый рисунок, (например, видеопроигрыватель), рекомендуется использовать цвета Theme.lightPrimaryColor и Theme.lightSecondaryColor.

lightSecondaryColor : color

Основные и вспомогательные цвета определяются текущей атмосферой и подбираются таким образом, чтобы сочетаться с фоновым рисунком атмосферы. Цвета по умолчанию Theme.primaryColor и Theme.secondaryColor не всегда могут быть уместны, если в приложении используется нестандартный фоновый рисунок. Если в приложении используется светлый фоновый рисунок, (например, текстовый документ), рекомендуется использовать цвета Theme.darkPrimaryColor и Theme.darkSecondaryColor. Если в приложении используется тёмный фоновый рисунок, (например, видеопроигрыватель), рекомендуется использовать цвета Theme.lightPrimaryColor и Theme.lightSecondaryColor.

maximumFlickVelocity : real

Свойства, содержащие параметры прокрутки списков в стиле ОС Аврора, которые не зависят от разрешения экрана. К этим свойствам не следует обращаться напрямую, если приложение использует представления SilicaFlickable, SilicaListView, SilicaGridView или SilicaWebView.

  • Theme.flickDeceleration — содержит значение, равное замедлению скорости свободной прокрутки списка после завершения жеста;
  • Theme.maximumFlickVelocity — содержит значение, соответствующее максимальной скорости прокрутки списка.
opacityFaint : real

Свойства содержат стандартные значения непрозрачности для отображения недоступного, отключённого или неактивного содержимого:

  • Theme.opacityFaint — непрозрачность, используемая для отображения недоступного контента, например, требующего установки
  • Theme.opacityLow — непрозрачность, используемая для отображения отключённого содержимого.
  • Theme.opacityHigh — непрозрачность, используемая для визуализации неактивного содержимого.
  • Theme.opacityOverlay — непрозрачность, используемая для отображения отключённого содержимого.

При отключении элементов путём установки флага enabled в значение false соответствующая непрозрачность обычно применяется автоматически, поэтому разработчику нет необходимости устанавливать это свойство явно. Однако в некоторых крайних случаях или при создании пользовательских компонентов разработчику может потребоваться использовать константу Theme.opacityLow для применения непрозрачности к отключённым элементам.

В случаях, когда это необходимо, прозрачность обычно применяется к цвету с помощью rgba() или явно как значение opacity:

Column {
    property bool allowSelection: true

    width: parent.width
    enabled: allowSelection
    opacity: allowSelection ? 1.0 : Theme.opacityLow

    ComboBox {
        width: parent.width
        //% "Size"
        label: qsTrId("example_app-label-size")
        menu: ContextMenu {
            MenuItem {
                //% "Small"
                text: qsTrId("example_app-menu-small")
            }
            MenuItem {
                //% "Medium"
                text: qsTrId("example_app-menu-medium")
            }
            MenuItem {
                //% "Large"
                text: qsTrId("example_app-menu-large")
            }
        }
    }
}

В приведённом выше примере свойство enabled у Column при наследовании переопределяется внутренним флагом MouseArea.enabled. Отключение Column предотвратит взаимодействие с его дочерними компонентами (в данном случае ComboBox), но дочерние компоненты будут отображаться с полной непрозрачностью, что может спутать пользователя. Явная установка свойства opacity Column, когда он отключён, решает эту проблему.

opacityHigh : real

Свойства содержат стандартные значения непрозрачности для отображения недоступного, отключённого или неактивного содержимого:

  • Theme.opacityFaint — непрозрачность, используемая для отображения недоступного контента, например, требующего установки.
  • Theme.opacityLow — непрозрачность, используемая для отображения отключённого содержимого.
  • Theme.opacityHigh — непрозрачность, используемая для визуализации неактивного содержимого.
  • Theme.opacityOverlay — непрозрачность, используемая для отображения отключённого содержимого.

При отключении элементов путём установки флага enabled в значение false соответствующая непрозрачность обычно применяется автоматически, поэтому разработчику нет необходимости устанавливать это свойство явно. Однако в некоторых крайних случаях или при создании пользовательских компонентов разработчику может потребоваться использовать константу Theme.opacityLow для применения непрозрачности к отключённым элементам.

В случаях, когда это необходимо, прозрачность обычно применяется к цвету с помощью rgba() или явно как значение opacity:

Column {
    property bool allowSelection: true

    width: parent.width
    enabled: allowSelection
    opacity: allowSelection ? 1.0 : Theme.opacityLow

    ComboBox {
        width: parent.width
        //% "Size"
        label: qsTrId("example_app-label-size")
        menu: ContextMenu {
            MenuItem {
                //% "Small"
                text: qsTrId("example_app-menu-small")
            }
            MenuItem {
                //% "Medium"
                text: qsTrId("example_app-menu-medium")
            }
            MenuItem {
                //% "Large"
                text: qsTrId("example_app-menu-large")
            }
        }
    }
}

В приведённом выше примере свойство enabled у Column при наследовании переопределяется внутренним флагом MouseArea.enabled. Отключение Column предотвратит взаимодействие с его дочерними компонентами (в данном случае ComboBox), но дочерние компоненты будут отображаться с полной непрозрачностью, что может спутать пользователя. Явная установка свойства opacity Column, когда он отключён, решает эту проблему.

opacityLow : real

Свойства содержат стандартные значения непрозрачности для отображения недоступного, отключённого или неактивного содержимого:

  • Theme.opacityFaint — непрозрачность, используемая для отображения недоступного контента, например, требующего установки.
  • Theme.opacityLow — непрозрачность, используемая для отображения отключённого содержимого.
  • Theme.opacityHigh — непрозрачность, используемая для визуализации неактивного содержимого.
  • Theme.opacityOverlay — непрозрачность, используемая для отображения отключённого содержимого.

При отключении элементов путём установки флага enabled в значение false соответствующая непрозрачность обычно применяется автоматически, поэтому разработчику нет необходимости устанавливать это свойство явно. Однако в некоторых крайних случаях или при создании пользовательских компонентов разработчику может потребоваться использовать константу Theme.opacityLow для применения непрозрачности к отключённым элементам.

В случаях, когда это необходимо, прозрачность обычно применяется к цвету с помощью rgba() или явно как значение opacity:

Column {
    property bool allowSelection: true

    width: parent.width
    enabled: allowSelection
    opacity: allowSelection ? 1.0 : Theme.opacityLow

    ComboBox {
        width: parent.width
        //% "Size"
        label: qsTrId("example_app-label-size")
        menu: ContextMenu {
            MenuItem {
                //% "Small"
                text: qsTrId("example_app-menu-small")
            }
            MenuItem {
                //% "Medium"
                text: qsTrId("example_app-menu-medium")
            }
            MenuItem {
                //% "Large"
                text: qsTrId("example_app-menu-large")
            }
        }
    }
}

В приведённом выше примере свойство enabled у Column при наследовании переопределяется внутренним флагом MouseArea.enabled. Отключение Column предотвратит взаимодействие с его дочерними компонентами (в данном случае ComboBox), но дочерние компоненты будут отображаться с полной непрозрачностью, что может спутать пользователя. Явная установка свойства opacity Column, когда он отключён, решает эту проблему.

opacityOverlay : real

Свойства содержат стандартные значения непрозрачности для отображения недоступного, отключённого или неактивного содержимого:

  • Theme.opacityFaint — непрозрачность, используемая для отображения недоступного контента, например, требующего установки.
  • Theme.opacityLow — непрозрачность, используемая для отображения отключённого содержимого.
  • Theme.opacityHigh — непрозрачность, используемая для визуализации неактивного содержимого.
  • Theme.opacityOverlay — непрозрачность, используемая для отображения отключённого содержимого.

При отключении элементов путём установки флага enabled в значение false соответствующая непрозрачность обычно применяется автоматически, поэтому разработчику нет необходимости устанавливать это свойство явно. Однако в некоторых крайних случаях или при создании пользовательских компонентов разработчику может потребоваться использовать константу Theme.opacityLow для применения непрозрачности к отключённым элементам.

В случаях, когда это необходимо, прозрачность обычно применяется к цвету с помощью rgba() или явно как значение opacity:

Column {
    property bool allowSelection: true

    width: parent.width
    enabled: allowSelection
    opacity: allowSelection ? 1.0 : Theme.opacityLow

    ComboBox {
        width: parent.width
        //% "Size"
        label: qsTrId("example_app-label-size")
        menu: ContextMenu {
            MenuItem {
                //% "Small"
                text: qsTrId("example_app-menu-small")
            }
            MenuItem {
                //% "Medium"
                text: qsTrId("example_app-menu-medium")
            }
            MenuItem {
                //% "Large"
                text: qsTrId("example_app-menu-large")
            }
        }
    }
}

В приведённом выше примере свойство enabled у Column при наследовании переопределяется внутренним флагом MouseArea.enabled. Отключение Column предотвратит взаимодействие с его дочерними компонентами (в данном случае ComboBox), но дочерние компоненты будут отображаться с полной непрозрачностью, что может спутать пользователя. Явная установка свойства opacity Column, когда он отключён, решает эту проблему.

overlayBackgroundColor : color

Цвет фона системных диалогов, открываемых поверх приложения.

paddingCover : real

Свойства, содержащие стандартные отступы:

  • Theme.paddingSmall — отступ, который равен самому маленькому расстоянию между элементами пользовательского интерфейса (часто используется в случаях, когда место на экране ограничено);
  • Theme.paddingMedium — отступ, который используется для установки расстояния между элементами интерфейса, которые связаны друг с другом по смыслу и поэтому визуально должны быть вместе;
  • Theme.paddingLarge — отступ, который обычно используется для установки расстояния между элементами интерфейса (часто используется в качестве вертикального интервала между компонентами в контейнере типа Column);
  • Theme.paddingCover — отступ, который рекомендуется между содержимым обложки и рамкой обложки.
  • Theme.horizontalPageMargin — отступ, который используется для установки расстояния между содержимым страницы и левым и правым краями экрана. Обычно это значение равно Theme.paddingLarge на устройствах с маленькими экранами (смартфоны), но может быть шире на устройствах с большими экранами (планшеты).

Отступы от левого и правого краев экрана следует устанавливать равными Theme.horizontalPageMargin.

paddingLarge : real

Свойства, содержащие стандартные отступы:

  • Theme.paddingSmall — отступ, который равен самому маленькому расстоянию между элементами пользовательского интерфейса (часто используется в случаях, когда место на экране ограничено);
  • Theme.paddingMedium — отступ, который используется для установки расстояния между элементами интерфейса, которые связаны друг с другом по смыслу и поэтому визуально должны быть вместе;
  • Theme.paddingLarge — отступ, который обычно используется для установки расстояния между элементами интерфейса (часто используется в качестве вертикального интервала между компонентами в контейнере типа Column);
  • Theme.paddingCover — отступ, который рекомендуется между содержимым обложки и рамкой обложки.
  • Theme.horizontalPageMargin — отступ, который используется для установки расстояния между содержимым страницы и левым и правым краями экрана. Обычно это значение равно Theme.paddingLarge на устройствах с маленькими экранами (смартфоны), но может быть шире на устройствах с большими экранами (планшеты).

Отступы от левого и правого краев экрана следует устанавливать равными Theme.horizontalPageMargin.

paddingMedium : real

Свойства, содержащие стандартные отступы:

  • Theme.paddingSmall — отступ, который равен самому маленькому расстоянию между элементами пользовательского интерфейса (часто используется в случаях, когда место на экране ограничено);
  • Theme.paddingMedium — отступ, который используется для установки расстояния между элементами интерфейса, которые связаны друг с другом по смыслу и поэтому визуально должны быть вместе;
  • Theme.paddingLarge — отступ, который обычно используется для установки расстояния между элементами интерфейса (часто используется в качестве вертикального интервала между компонентами в контейнере типа Column);
  • Theme.paddingCover — отступ, который рекомендуется между содержимым обложки и рамкой обложки.
  • Theme.horizontalPageMargin — отступ, который используется для установки расстояния между содержимым страницы и левым и правым краями экрана. Обычно это значение равно Theme.paddingLarge на устройствах с маленькими экранами (смартфоны), но может быть шире на устройствах с большими экранами (планшеты).

Отступы от левого и правого краев экрана следует устанавливать равными Theme.horizontalPageMargin.

paddingSmall : real

Свойства, содержащие стандартные отступы:

  • Theme.paddingSmall — отступ, который равен самому маленькому расстоянию между элементами пользовательского интерфейса (часто используется в случаях, когда место на экране ограничено);
  • Theme.paddingMedium — отступ, который используется для установки расстояния между элементами интерфейса, которые связаны друг с другом по смыслу и поэтому визуально должны быть вместе;
  • Theme.paddingLarge — отступ, который обычно используется для установки расстояния между элементами интерфейса (часто используется в качестве вертикального интервала между компонентами в контейнере типа Column);
  • Theme.paddingCover — отступ, который рекомендуется между содержимым обложки и рамкой обложки.
  • Theme.horizontalPageMargin — отступ, который используется для установки расстояния между содержимым страницы и левым и правым краями экрана. Обычно это значение равно Theme.paddingLarge на устройствах с маленькими экранами (смартфоны), но может быть шире на устройствах с большими экранами (планшеты).

Отступы от левого и правого краев экрана следует устанавливать равными Theme.horizontalPageMargin.

pixelRatio : real

Содержит отношение «физических» пикселей к «логическим», которое может быть полезным для того, чтобы регулировать нестандартные значения размеров и отступы в зависимости от размеров экрана конкретного устройства. В большинстве случаев следует избегать использования данного свойства. Вместо этого компоновку элементов управления приложения необходимо выполнять с помощью стандартных свойств объекта Theme.

primaryColor : color

Свойства, содержащие стандартные цвета в соответствии с текущей атмосферой ОС Аврора:

  • Theme.primaryColor — цвет, который обычно используется для того, чтобы подчеркнуть активные элементы пользовательского интерфейса;
  • Theme.secondaryColor — цвет, который обычно используется для отрисовки менее значимых частей пользовательского интерфейса;
  • Theme.highlightColor — основной цвет для неинтерактивного текста, а также для подсветки элементов при нажатии на них.
  • Theme.secondaryHighlightColor — второстепенный цвет, используемый для подсвечивания менее значимых элементов пользовательского интерфейса.
  • Theme.highlightDimmerColor — основной цвет с более темным оттенком, который используется в случаях, когда нужно подсветить элемент, но при этом не отвлекать внимание от более значимых элементов.

Второстепенные цвета следует применять для любых текстов и значков, которые по своей сути являются лишь вспомогательными элементами интерфейса и, следовательно, не должны привлекать на себя основное внимание пользователя. Например, текст заполнителя для типа TextField окрашивается цветом Theme.secondaryColor (фон получает аналогичный второстепенный цвет, когда текстовое поле получает фокус).

secondaryColor : color

Свойства, содержащие стандартные цвета в соответствии с текущей атмосферой ОС Аврора:

  • Theme.primaryColor — цвет, который обычно используется для того, чтобы подчеркнуть активные элементы пользовательского интерфейса;
  • Theme.secondaryColor — цвет, который обычно используется для отрисовки менее значимых частей пользовательского интерфейса;
  • Theme.highlightColor — основной цвет для неинтерактивного текста, а также для подсветки элементов при нажатии на них.
  • Theme.secondaryHighlightColor — второстепенный цвет, используемый для подсвечивания менее значимых элементов пользовательского интерфейса.
  • Theme.highlightDimmerColor — основной цвет с более темным оттенком, который используется в случаях, когда нужно подсветить элемент, но при этом не отвлекать внимание от более значимых элементов.

Второстепенные цвета следует применять для любых текстов и значков, которые по своей сути являются лишь вспомогательными элементами интерфейса и, следовательно, не должны привлекать на себя основное внимание пользователя. Например, текст заполнителя для типа TextField окрашивается цветом Theme.secondaryColor (фон получает аналогичный второстепенный цвет, когда текстовое поле получает фокус).

secondaryHighlightColor : color

Свойства, содержащие стандартные цвета в соответствии с текущей атмосферой ОС Аврора:

  • Theme.primaryColor — цвет, который обычно используется для того, чтобы подчеркнуть активные элементы пользовательского интерфейса;
  • Theme.secondaryColor — цвет, который обычно используется для отрисовки менее значимых частей пользовательского интерфейса;
  • Theme.highlightColor — основной цвет для неинтерактивного текста, а также для подсветки элементов при нажатии на них.
  • Theme.secondaryHighlightColor — второстепенный цвет, используемый для подсвечивания менее значимых элементов пользовательского интерфейса.
  • Theme.highlightDimmerColor — основной цвет с более темным оттенком, который используется в случаях, когда нужно подсветить элемент, но при этом не отвлекать внимание от более значимых элементов.

Второстепенные цвета следует применять для любых текстов и значков, которые по своей сути являются лишь вспомогательными элементами интерфейса и, следовательно, не должны привлекать на себя основное внимание пользователя. Например, текст заполнителя для типа TextField окрашивается цветом Theme.secondaryColor (фон получает аналогичный второстепенный цвет, когда текстовое поле получает фокус).

startDragDistance : int

Содержит значение, которое соответствует расстоянию от момента прикосновения до того, как жест будет распознан как перетаскивание.

Описание методов

qreal dp(size)

Принимает независимое от устройства значение пикселя и возвращает его в соответствующих пикселях, зависящих от дисплея. Эквивалент умножения входного значения на Theme.pixelRatio.

color highlightBackgroundAlternativeFromColor(color, scheme)

Возвращает альтернативный цвет фона выделения, полученный из базисного цвета (параметр color) и цветовой схемы (параметр scheme).

color highlightBackgroundFromColor(color, scheme)

Возвращает цвет подсветки фона, полученный из базисного цвета (параметр color) и цветовой схемы (параметр scheme).

color highlightDimmerFromColor(color, scheme)

Возвращает цвет подсветки с более тёмным оттенком, полученный из базисного цвета (параметр color) и цветовой схемы (параметр scheme).

color highlightFromColor(color, scheme)

Возвращает цвет подсветки, полученный из базисного цвета (параметр color) и цветовой схемы (параметр scheme).

highlightText(text, pattern, color)

Выполняет поиск по паттерну pattern (обычная строка или регулярное выражение) в тексте text и устанавливает всем найденным вхождениям цвет color.

Возвращает HTML-строку, в которой найденные совпадения выделены цветом, а исходный текст экранирован (метасимволы <,

, &, и " заменены их HTML-сущностями).

string iconForMimeType(string mimeType)

Возвращает URI значка для MIME-типа, указанного в параметре mimeType.

Image {
    source: Theme.iconForMimeType("text/vcard")
}

URI значка может быть комбинацией из префикса "image://theme/icon-m-file-" и одного из следующих идентификаторов:

  • apk;
  • audio;
  • formatted;
  • image:
  • note;
  • pdf;
  • other;
  • presentation;
  • rpm;
  • spreadsheet;
  • vcard;
  • video;
  • folder.

Если подходящий URI значка не найден, то возвращается "image://theme/icon-m-file-other".

color presenceColor(enumeration presenceMode)

Возвращает цвет присутствия по заданному значению presenceMode (режима присутствия).

Параметр presenceMode может принимать одно из значений:

  • Theme.PresenceAvailable — цвет статуса «Доступен»;
  • Theme.PresenceAway — цвет статуса «Отошел»;
  • Theme.PresenceBusy — цвет статуса «Занят»;
  • Theme.PresenceOffline — цвет статуса «Вне сети».
color rgba(color, opacity)

Применяет к цвету color значение непрозрачности opacity (от 0.0 до 1.0) и возвращает полученный в результате цвет.

color secondaryHighlightFromColor(color, scheme)

Возвращает второстепенный цвет подсветки, полученный из базисного цвета (параметр color) и цветовой схемы (параметр scheme).

Мы используем cookies для персонализации сайта и его более удобного использования. Вы можете запретить cookies в настройках браузера.

Пожалуйста ознакомьтесь с политикой использования cookies.