feat(StatusSmartIdenticon): Add support for color rings in StatusSmartIdenticon (#553)
Created new control `StatusIdenticonRing` and used in `StatusSmartIdenticon` component. Added property assignments in sandbox models to display the `StatusIdenticonRing` when needed. Added first documentation approach for `StatusIdenticonRing` and `StatusIdenticonRingSettings`. Closes #517
This commit is contained in:
parent
3bc3216ba0
commit
0df69a8f51
|
@ -13,3 +13,4 @@ Makefile
|
||||||
*_qml.cpp
|
*_qml.cpp
|
||||||
*_qmlcache.qrc
|
*_qmlcache.qrc
|
||||||
sandbox/qmlcache_loader.cpp
|
sandbox/qmlcache_loader.cpp
|
||||||
|
doc/html
|
Binary file not shown.
After Width: | Height: | Size: 2.3 KiB |
|
@ -30,6 +30,7 @@
|
||||||
\li \l{StatusSlider}
|
\li \l{StatusSlider}
|
||||||
\li \l{StatusSelect}
|
\li \l{StatusSelect}
|
||||||
\li \l{StatusBaseInput}
|
\li \l{StatusBaseInput}
|
||||||
|
\li \l{StatusIdenticonRing}
|
||||||
\li \l{StatusInput}
|
\li \l{StatusInput}
|
||||||
\li \l{StatusPickerButton}
|
\li \l{StatusPickerButton}
|
||||||
\li \l{StatusProgressBar}
|
\li \l{StatusProgressBar}
|
||||||
|
|
|
@ -15,6 +15,7 @@
|
||||||
\li \l{StatusIcon}
|
\li \l{StatusIcon}
|
||||||
\li \l{StatusIconBackgroundSettings}
|
\li \l{StatusIconBackgroundSettings}
|
||||||
\li \l{StatusIconSettings}
|
\li \l{StatusIconSettings}
|
||||||
|
\li \l{StatusIdenticonRingSettings}
|
||||||
\li \l{StatusImageSettings}
|
\li \l{StatusImageSettings}
|
||||||
\li \l{StatusModalHeaderSettings}
|
\li \l{StatusModalHeaderSettings}
|
||||||
\li \l{StatusTooltipSettings}
|
\li \l{StatusTooltipSettings}
|
||||||
|
|
|
@ -357,6 +357,18 @@ CExPynn1gWf9bx498P7/nzPcxEzGExhBdJGYihtAYQlO+tUZvqrPbqeudo5iJGEJjCE15a3VtodH3q2I
|
||||||
nzPcxEzGExhBdJGYihtAYQlO+tUZvqrPbqeudo5iJGEJjCE15a3VtodH3q2ImYgiNITTlTdG1nUZ5a92VITQxITFiJmIIjSE0htAYQrMHAAD//+wwFVpz+yqXAAAAAElFTkSuQmCC"
|
nzPcxEzGExhBdJGYihtAYQlO+tUZvqrPbqeudo5iJGEJjCE15a3VtodH3q2ImYgiNITTlTdG1nUZ5a92VITQxITFiJmIIjSE0htAYQrMHAAD//+wwFVpz+yqXAAAAAElFTkSuQmCC"
|
||||||
image.isIdenticon: true
|
image.isIdenticon: true
|
||||||
isOnline: true
|
isOnline: true
|
||||||
|
ringSettings.ringSpecModel:
|
||||||
|
ListModel {
|
||||||
|
ListElement {colorId: 13; segmentLength: 5}
|
||||||
|
ListElement {colorId: 31; segmentLength: 5}
|
||||||
|
ListElement {colorId: 10; segmentLength: 1}
|
||||||
|
ListElement {colorId: 2; segmentLength: 5}
|
||||||
|
ListElement {colorId: 26; segmentLength: 2}
|
||||||
|
ListElement {colorId: 19; segmentLength: 4}
|
||||||
|
ListElement {colorId: 28; segmentLength: 3}
|
||||||
|
}
|
||||||
|
ringSettings.distinctiveColors: Theme.palette.identiconRingColors
|
||||||
|
ringSettings.totalRingUnits: 25
|
||||||
}
|
}
|
||||||
|
|
||||||
StatusMemberListItem {
|
StatusMemberListItem {
|
||||||
|
|
|
@ -266,6 +266,9 @@ StatusAppThreePanelLayout {
|
||||||
image.source: model.source
|
image.source: model.source
|
||||||
image.isIdenticon: model.isIdenticon
|
image.isIdenticon: model.isIdenticon
|
||||||
isOnline: model.isOnline
|
isOnline: model.isOnline
|
||||||
|
ringSettings.ringSpecModel: model.ringSpecModel
|
||||||
|
ringSettings.distinctiveColors: Theme.palette.identiconRingColors
|
||||||
|
ringSettings.totalRingUnits: model.totalRingUnits
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -903,6 +903,14 @@ CExPynn1gWf9bx498P7/nzPcxEzGExhBdJGYihtAYQlO+tUZvqrPbqeudo5iJGEJjCE15a3VtodH3q2I
|
||||||
source: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAAlklEQVR4nOzW0QmDQBAG4SSkl7SUQlJGCrElq9F3QdjjVhh/5nv3cFhY9vUIYQiNITSG0BhCExPynn1gWf9bx498P7/
|
source: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAAlklEQVR4nOzW0QmDQBAG4SSkl7SUQlJGCrElq9F3QdjjVhh/5nv3cFhY9vUIYQiNITSG0BhCExPynn1gWf9bx498P7/
|
||||||
nzPcxEzGExhBdJGYihtAYQlO+tUZvqrPbqeudo5iJGEJjCE15a3VtodH3q2ImYgiNITTlTdG1nUZ5a92VITQxITFiJmIIjSE0htAYQrMHAAD//+wwFVpz+yqXAAAAAElFTkSuQmCC"
|
nzPcxEzGExhBdJGYihtAYQlO+tUZvqrPbqeudo5iJGEJjCE15a3VtodH3q2ImYgiNITTlTdG1nUZ5a92VITQxITFiJmIIjSE0htAYQrMHAAD//+wwFVpz+yqXAAAAAElFTkSuQmCC"
|
||||||
isIdenticon: true
|
isIdenticon: true
|
||||||
|
totalRingUnits: 25
|
||||||
|
ringSpecModel: [ ListElement {colorId: 13; segmentLength: 5},
|
||||||
|
ListElement {colorId: 31; segmentLength: 5},
|
||||||
|
ListElement {colorId: 10; segmentLength: 1},
|
||||||
|
ListElement {colorId: 2; segmentLength: 5},
|
||||||
|
ListElement {colorId: 26; segmentLength: 2},
|
||||||
|
ListElement {colorId: 19; segmentLength: 4},
|
||||||
|
ListElement {colorId: 28; segmentLength: 3} ]
|
||||||
}
|
}
|
||||||
ListElement {
|
ListElement {
|
||||||
nickName: "carmen.eth"
|
nickName: "carmen.eth"
|
||||||
|
@ -912,7 +920,7 @@ CExPynn1gWf9bx498P7/nzPcxEzGExhBdJGYihtAYQlO+tUZvqrPbqeudo5iJGEJjCE15a3VtodH3q2I
|
||||||
isMutualContact: false
|
isMutualContact: false
|
||||||
isOnline: false
|
isOnline: false
|
||||||
source: ""
|
source: ""
|
||||||
isIdenticon: false
|
isIdenticon: false
|
||||||
}
|
}
|
||||||
ListElement {
|
ListElement {
|
||||||
nickName: "This girl I know from work"
|
nickName: "This girl I know from work"
|
||||||
|
@ -924,6 +932,14 @@ CExPynn1gWf9bx498P7/nzPcxEzGExhBdJGYihtAYQlO+tUZvqrPbqeudo5iJGEJjCE15a3VtodH3q2I
|
||||||
source: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAAiElEQVR4nOzXUQpAQBRGYWQvLNAyLJDV8C5qpiGnv/M9al5Ot27X0IUwhMYQGkNoDKGJCRlLH67bftx9X+ap/+P9VcxEDK
|
source: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAAiElEQVR4nOzXUQpAQBRGYWQvLNAyLJDV8C5qpiGnv/M9al5Ot27X0IUwhMYQGkNoDKGJCRlLH67bftx9X+ap/+P9VcxEDK
|
||||||
ExhKZ4a9Uq3TZviZmIITSG0DRvlqcbqVbrlouZiCE0htD4h0hjCI0hNN5aNIbQGKKPxEzEEBpDaAyhMYTmDAAA//+gYCErzmCpCQAAAABJRU5ErkJggg=="
|
ExhKZ4a9Uq3TZviZmIITSG0DRvlqcbqVbrlouZiCE0htD4h0hjCI0hNN5aNIbQGKKPxEzEEBpDaAyhMYTmDAAA//+gYCErzmCpCQAAAABJRU5ErkJggg=="
|
||||||
isIdenticon: true
|
isIdenticon: true
|
||||||
|
totalRingUnits: 25
|
||||||
|
ringSpecModel: [ ListElement {colorId: 11; segmentLength: 1},
|
||||||
|
ListElement {colorId: 23; segmentLength: 5},
|
||||||
|
ListElement {colorId: 23; segmentLength: 5},
|
||||||
|
ListElement {colorId: 10; segmentLength: 4},
|
||||||
|
ListElement {colorId: 15; segmentLength: 3},
|
||||||
|
ListElement {colorId: 26; segmentLength: 2},
|
||||||
|
ListElement {colorId: 29; segmentLength: 5} ]
|
||||||
}
|
}
|
||||||
ListElement {
|
ListElement {
|
||||||
nickName: "Mark Cuban"
|
nickName: "Mark Cuban"
|
||||||
|
@ -932,9 +948,18 @@ CExPynn1gWf9bx498P7/nzPcxEzGExhBdJGYihtAYQlO+tUZvqrPbqeudo5iJGEJjCE15a3VtodH3q2I
|
||||||
trustIndicator: StatusContactVerificationIcons.TrustedType.Untrustworthy
|
trustIndicator: StatusContactVerificationIcons.TrustedType.Untrustworthy
|
||||||
isMutualContact: true
|
isMutualContact: true
|
||||||
isOnline: false
|
isOnline: false
|
||||||
source: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAAlklEQVR4nOzW0QmDQBAG4SSkl7SUQlJGCrElq9F3QdjjVhh/5nv3cFhY9vUIYQiNITSG0BhCExPynn1gWf9bx498P7/
|
source: ""
|
||||||
nzPcxEzGExhBdJGYihtAYQlO+tUZvqrPbqeudo5iJGEJjCE15a3VtodH3q2ImYgiNITTlTdG1nUZ5a92VITQxITFiJmIIjSE0htAYQrMHAAD//+wwFVpz+yqXAAAAAElFTkSuQmCC"
|
isIdenticon: false
|
||||||
isIdenticon: true
|
totalRingUnits: 25
|
||||||
|
ringSpecModel: [ ListElement {colorId: 0; segmentLength: 1},
|
||||||
|
ListElement {colorId: 28; segmentLength: 1},
|
||||||
|
ListElement {colorId: 31; segmentLength: 1},
|
||||||
|
ListElement {colorId: 22; segmentLength: 4},
|
||||||
|
ListElement {colorId: 28; segmentLength: 3},
|
||||||
|
ListElement {colorId: 27; segmentLength: 5},
|
||||||
|
ListElement {colorId: 7; segmentLength: 5},
|
||||||
|
ListElement {colorId: 13; segmentLength: 1},
|
||||||
|
ListElement {colorId: 25; segmentLength: 4}]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -50,6 +50,11 @@ Rectangle {
|
||||||
height: 40
|
height: 40
|
||||||
isIdenticon: false
|
isIdenticon: false
|
||||||
}
|
}
|
||||||
|
property StatusIdenticonRingSettings ringSettings: StatusIdenticonRingSettings {
|
||||||
|
totalRingUnits: 1
|
||||||
|
initalAngleRad: 0
|
||||||
|
ringPxSize: 1.5
|
||||||
|
}
|
||||||
|
|
||||||
property alias sensor: sensor
|
property alias sensor: sensor
|
||||||
property alias badge: statusListItemBadge
|
property alias badge: statusListItemBadge
|
||||||
|
@ -123,6 +128,7 @@ Rectangle {
|
||||||
!!statusListItem.icon.name ||
|
!!statusListItem.icon.name ||
|
||||||
!!statusListItem.image.source.toString()
|
!!statusListItem.image.source.toString()
|
||||||
badge.border.color: statusListItem.color
|
badge.border.color: statusListItem.color
|
||||||
|
ringSettings: statusListItem.ringSettings
|
||||||
}
|
}
|
||||||
|
|
||||||
Item {
|
Item {
|
||||||
|
|
|
@ -1,11 +1,13 @@
|
||||||
import QtQuick 2.13
|
import QtQuick 2.13
|
||||||
import StatusQ.Core 0.1
|
import StatusQ.Core 0.1
|
||||||
import StatusQ.Core.Theme 0.1
|
import StatusQ.Core.Theme 0.1
|
||||||
|
import StatusQ.Controls 0.1
|
||||||
|
|
||||||
Loader {
|
Loader {
|
||||||
id: statusSmartIdenticon
|
id: statusSmartIdenticon
|
||||||
|
|
||||||
property string name: ""
|
property string name: ""
|
||||||
|
property int dZ: 100
|
||||||
|
|
||||||
// Badge color properties must be set if badgeItem.visible = true
|
// Badge color properties must be set if badgeItem.visible = true
|
||||||
property alias badge: statusBadge
|
property alias badge: statusBadge
|
||||||
|
@ -20,6 +22,12 @@ Loader {
|
||||||
height: 40
|
height: 40
|
||||||
}
|
}
|
||||||
|
|
||||||
|
property StatusIdenticonRingSettings ringSettings: StatusIdenticonRingSettings {
|
||||||
|
totalRingUnits: 1
|
||||||
|
initalAngleRad: 0
|
||||||
|
ringPxSize: 1.5
|
||||||
|
}
|
||||||
|
|
||||||
sourceComponent: statusSmartIdenticon.icon.isLetterIdenticon ? letterIdenticon :
|
sourceComponent: statusSmartIdenticon.icon.isLetterIdenticon ? letterIdenticon :
|
||||||
!!statusSmartIdenticon.image.source.toString() ? roundedImage :
|
!!statusSmartIdenticon.image.source.toString() ? roundedImage :
|
||||||
!!statusSmartIdenticon.icon.name.toString() ? roundedIcon : letterIdenticon
|
!!statusSmartIdenticon.icon.name.toString() ? roundedIcon : letterIdenticon
|
||||||
|
@ -79,6 +87,13 @@ Loader {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Next components are painted above main sourceComponent
|
||||||
|
StatusIdenticonRing {
|
||||||
|
settings: statusSmartIdenticon.ringSettings
|
||||||
|
anchors.fill: parent
|
||||||
|
z: statusSmartIdenticon.dZ/2
|
||||||
|
}
|
||||||
|
|
||||||
// State component
|
// State component
|
||||||
StatusBadge {
|
StatusBadge {
|
||||||
id: statusBadge
|
id: statusBadge
|
||||||
|
@ -88,6 +103,6 @@ Loader {
|
||||||
border.width: 3
|
border.width: 3
|
||||||
implicitHeight: 15
|
implicitHeight: 15
|
||||||
implicitWidth: 15
|
implicitWidth: 15
|
||||||
z: 100
|
z: statusSmartIdenticon.dZ
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,108 @@
|
||||||
|
import QtQuick 2.0
|
||||||
|
import QtQuick.Layouts 1.0
|
||||||
|
|
||||||
|
import StatusQ.Core 0.1
|
||||||
|
/*!
|
||||||
|
\qmltype StatusIdenticonRing
|
||||||
|
\inherits Item
|
||||||
|
\inqmlmodule StatusQ.Controls
|
||||||
|
\since StatusQ.Controls 0.1
|
||||||
|
\brief It provides lines wrapped into a ring around another component like avatars.
|
||||||
|
|
||||||
|
The \c StatusIdenticonRing item displays lines wrapped into a ring. The line is rendered clockwise.
|
||||||
|
|
||||||
|
N segments and M distinctive colors compose identicon lines.
|
||||||
|
|
||||||
|
Example of how the component looks like:
|
||||||
|
\image status_identicon_ring.png
|
||||||
|
|
||||||
|
Example of how to use it:
|
||||||
|
|
||||||
|
\qml
|
||||||
|
StatusIdenticonRing {
|
||||||
|
anchors.fill: parent
|
||||||
|
settings: StatusIdenticonRingSettings {
|
||||||
|
totalRingUnits: 25
|
||||||
|
initalAngleRad: 0
|
||||||
|
ringPxSize: 1.5
|
||||||
|
ringSpecModel: [ ListElement {colorId: 0; segmentLength: 1},
|
||||||
|
ListElement {colorId: 28; segmentLength: 1},
|
||||||
|
ListElement {colorId: 31; segmentLength: 1},
|
||||||
|
ListElement {colorId: 22; segmentLength: 4},
|
||||||
|
ListElement {colorId: 28; segmentLength: 3},
|
||||||
|
ListElement {colorId: 27; segmentLength: 5},
|
||||||
|
ListElement {colorId: 7; segmentLength: 5},
|
||||||
|
ListElement {colorId: 13; segmentLength: 1},
|
||||||
|
ListElement {colorId: 25; segmentLength: 4}]
|
||||||
|
distinctiveColors: ["#000000", "#726F6F", "#C4C4C4",
|
||||||
|
"#E7E7E7", "#FFFFFF", "#00FF00",
|
||||||
|
"#009800", "#B8FFBB", "#FFC413",
|
||||||
|
"#9F5947", "#FFFF00", "#A8AC00",
|
||||||
|
"#FFFFB0", "#FF5733", "#FF0000",
|
||||||
|
"#9A0000", "#FF9D9D", "#FF0099",
|
||||||
|
"#C80078", "#FF00FF", "#900090",
|
||||||
|
"#FFB0FF", "#9E00FF", "#0000FF",
|
||||||
|
"#000086", "#9B81FF", "#3FAEF9",
|
||||||
|
"#9A6600", "#00FFFF", "#008694",
|
||||||
|
"#C2FFFF", "#00F0B6"]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
\endqml
|
||||||
|
|
||||||
|
For a list of components available see StatusQ.
|
||||||
|
*/
|
||||||
|
Item {
|
||||||
|
id: identiconRing
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\qmlproperty StatusIdenticonRingSettings StatusIdenticonRing::settings
|
||||||
|
This property holds a set of settings for building the ring.
|
||||||
|
*/
|
||||||
|
property StatusIdenticonRingSettings settings: StatusIdenticonRingSettings {
|
||||||
|
totalRingUnits: 1
|
||||||
|
initalAngleRad: 0
|
||||||
|
ringPxSize: 1.5
|
||||||
|
}
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\qmlproperty real StatusIdenticonRing::segmentRadLen
|
||||||
|
This property holds the total ring line length in radians. It depends on totalRingUnits value of settings object.
|
||||||
|
*/
|
||||||
|
readonly property real segmentRadLen: 2 * Math.PI / settings.totalRingUnits
|
||||||
|
|
||||||
|
visible: settings.ringSpecModel !== undefined
|
||||||
|
|
||||||
|
Canvas {
|
||||||
|
function printArcSegment(context, xPos, yPos, radius, color, startAngle, arcAngleLen, lineWidth) {
|
||||||
|
context.beginPath()
|
||||||
|
context.arc(xPos, yPos, radius, startAngle, startAngle + arcAngleLen, false/*anticlockwise*/)
|
||||||
|
context.strokeStyle = color
|
||||||
|
context.lineWidth = lineWidth
|
||||||
|
context.stroke()
|
||||||
|
}
|
||||||
|
|
||||||
|
anchors.fill: parent
|
||||||
|
onPaint: {
|
||||||
|
const context = getContext("2d")
|
||||||
|
const radius = (height - settings.ringPxSize) / 2
|
||||||
|
const xPos = width / 2
|
||||||
|
const yPos = height / 2
|
||||||
|
let arcPos = settings.initalAngleRad
|
||||||
|
context.reset()
|
||||||
|
if(settings.ringSpecModel) {
|
||||||
|
for (let i=0; i<settings.ringSpecModel.count; i++) {
|
||||||
|
const segment = settings.ringSpecModel.get(i)
|
||||||
|
printArcSegment(context,
|
||||||
|
xPos,
|
||||||
|
yPos,
|
||||||
|
radius,
|
||||||
|
settings.distinctiveColors[segment.colorId],
|
||||||
|
arcPos,
|
||||||
|
segment.segmentLength * identiconRing.segmentRadLen,
|
||||||
|
settings.ringPxSize)
|
||||||
|
arcPos += segment.segmentLength * identiconRing.segmentRadLen
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -8,6 +8,7 @@ StatusChatInfoButton 0.1 StatusChatInfoButton.qml
|
||||||
StatusChatListCategoryItemButton 0.1 StatusChatListCategoryItemButton.qml
|
StatusChatListCategoryItemButton 0.1 StatusChatListCategoryItemButton.qml
|
||||||
StatusColorSelector 0.1 StatusColorSelector.qml
|
StatusColorSelector 0.1 StatusColorSelector.qml
|
||||||
StatusIconTabButton 0.1 StatusIconTabButton.qml
|
StatusIconTabButton 0.1 StatusIconTabButton.qml
|
||||||
|
StatusIdenticonRing 0.1 StatusIdenticonRing.qml
|
||||||
StatusNavBarTabButton 0.1 StatusNavBarTabButton.qml
|
StatusNavBarTabButton 0.1 StatusNavBarTabButton.qml
|
||||||
StatusTabBarIconButton 0.1 StatusTabBarIconButton.qml
|
StatusTabBarIconButton 0.1 StatusTabBarIconButton.qml
|
||||||
StatusToolTip 0.1 StatusToolTip.qml
|
StatusToolTip 0.1 StatusToolTip.qml
|
||||||
|
|
|
@ -0,0 +1,78 @@
|
||||||
|
import QtQuick 2.13
|
||||||
|
import StatusQ.Core 0.1
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\qmltype StatusIdenticonRingSettings
|
||||||
|
\inherits QtObject
|
||||||
|
\inqmlmodule StatusQ.Core
|
||||||
|
\since StatusQ.Core 0.1
|
||||||
|
\brief It describes identicon ring settings.
|
||||||
|
|
||||||
|
The \c StatusIdenticonRingSettings object is not a graphical component just an object to encapsulate identicon ring settings.
|
||||||
|
|
||||||
|
Example of how to use it:
|
||||||
|
|
||||||
|
\qml
|
||||||
|
StatusIdenticonRingSettings {
|
||||||
|
totalRingUnits: 25
|
||||||
|
initalAngleRad: 0
|
||||||
|
ringPxSize: 1.5
|
||||||
|
ringSpecModel: [ ListElement {colorId: 0; segmentLength: 1},
|
||||||
|
ListElement {colorId: 28; segmentLength: 1},
|
||||||
|
ListElement {colorId: 31; segmentLength: 1},
|
||||||
|
ListElement {colorId: 22; segmentLength: 4},
|
||||||
|
ListElement {colorId: 28; segmentLength: 3},
|
||||||
|
ListElement {colorId: 27; segmentLength: 5},
|
||||||
|
ListElement {colorId: 7; segmentLength: 5},
|
||||||
|
ListElement {colorId: 13; segmentLength: 1},
|
||||||
|
ListElement {colorId: 25; segmentLength: 4}]
|
||||||
|
distinctiveColors: ["#000000", "#726F6F", "#C4C4C4",
|
||||||
|
"#E7E7E7", "#FFFFFF", "#00FF00",
|
||||||
|
"#009800", "#B8FFBB", "#FFC413",
|
||||||
|
"#9F5947", "#FFFF00", "#A8AC00",
|
||||||
|
"#FFFFB0", "#FF5733", "#FF0000",
|
||||||
|
"#9A0000", "#FF9D9D", "#FF0099",
|
||||||
|
"#C80078", "#FF00FF", "#900090",
|
||||||
|
"#FFB0FF", "#9E00FF", "#0000FF",
|
||||||
|
"#000086", "#9B81FF", "#3FAEF9",
|
||||||
|
"#9A6600", "#00FFFF", "#008694",
|
||||||
|
"#C2FFFF", "#00F0B6"]
|
||||||
|
}
|
||||||
|
\endqml
|
||||||
|
|
||||||
|
For a list of components available see StatusQ.
|
||||||
|
*/
|
||||||
|
QtObject {
|
||||||
|
id: statusIdenticonRingSettings
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\qmlproperty ListModel StatusIdenticonRingSettings::ringSpecModel
|
||||||
|
This is a REQUIRED property that contains a ListModel object that describes each ring segment color and length.
|
||||||
|
Example of use: [ListElement {colorId: 0; segmentLength: 1}, ...]
|
||||||
|
*/
|
||||||
|
property ListModel ringSpecModel
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\qmlproperty var StatusIdenticonRingSettings::distinctiveColors
|
||||||
|
This is a REQUIRED property that holds an string array of disctinctive segment colors.
|
||||||
|
*/
|
||||||
|
property var distinctiveColors
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\qmlproperty real StatusIdenticonRingSettings::totalRingUnits
|
||||||
|
This property provides the total number of units the identicon ring is composed by.
|
||||||
|
*/
|
||||||
|
property real totalRingUnits
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\qmlproperty real StatusIdenticonRingSettings::initalAngleRad
|
||||||
|
This property provides the initial angle, in radians, the identicon ring will start rendering the line.
|
||||||
|
*/
|
||||||
|
property real initalAngleRad
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\qmlproperty real StatusIdenticonRingSettings::ringPxSize
|
||||||
|
This property provides the pixels size of the ring line.
|
||||||
|
*/
|
||||||
|
property real ringPxSize
|
||||||
|
}
|
|
@ -158,6 +158,13 @@ ThemePalette {
|
||||||
getColor('brown3')
|
getColor('brown3')
|
||||||
]
|
]
|
||||||
|
|
||||||
|
identiconRingColors: ["#000000", "#726F6F", "#C4C4C4", "#E7E7E7", "#FFFFFF", "#00FF00",
|
||||||
|
"#009800", "#B8FFBB", "#FFC413", "#9F5947", "#FFFF00", "#A8AC00",
|
||||||
|
"#FFFFB0", "#FF5733", "#FF0000", "#9A0000", "#FF9D9D", "#FF0099",
|
||||||
|
"#C80078", "#FF00FF", "#900090", "#FFB0FF", "#9E00FF", "#0000FF",
|
||||||
|
"#000086", "#9B81FF", "#3FAEF9", "#9A6600", "#00FFFF", "#008694",
|
||||||
|
"#C2FFFF", "#00F0B6"]
|
||||||
|
|
||||||
property QtObject statusAppLayout: QtObject {
|
property QtObject statusAppLayout: QtObject {
|
||||||
property color backgroundColor: baseColor3
|
property color backgroundColor: baseColor3
|
||||||
property color rightPanelBackgroundColor: baseColor3
|
property color rightPanelBackgroundColor: baseColor3
|
||||||
|
|
|
@ -156,6 +156,13 @@ ThemePalette {
|
||||||
getColor('brown')
|
getColor('brown')
|
||||||
]
|
]
|
||||||
|
|
||||||
|
identiconRingColors: ["#000000", "#726F6F", "#C4C4C4", "#E7E7E7", "#FFFFFF", "#00FF00",
|
||||||
|
"#009800", "#B8FFBB", "#FFC413", "#9F5947", "#FFFF00", "#A8AC00",
|
||||||
|
"#FFFFB0", "#FF5733", "#FF0000", "#9A0000", "#FF9D9D", "#FF0099",
|
||||||
|
"#C80078", "#FF00FF", "#900090", "#FFB0FF", "#9E00FF", "#0000FF",
|
||||||
|
"#000086", "#9B81FF", "#3FAEF9", "#9A6600", "#00FFFF", "#008694",
|
||||||
|
"#C2FFFF", "#00F0B6"]
|
||||||
|
|
||||||
property QtObject statusAppLayout: QtObject {
|
property QtObject statusAppLayout: QtObject {
|
||||||
property color backgroundColor: white
|
property color backgroundColor: white
|
||||||
property color rightPanelBackgroundColor: white
|
property color rightPanelBackgroundColor: white
|
||||||
|
|
|
@ -92,6 +92,8 @@ QtObject {
|
||||||
|
|
||||||
property var accountColors: []
|
property var accountColors: []
|
||||||
|
|
||||||
|
property var identiconRingColors: []
|
||||||
|
|
||||||
property QtObject statusAppLayout: QtObject {
|
property QtObject statusAppLayout: QtObject {
|
||||||
property color backgroundColor
|
property color backgroundColor
|
||||||
property color rightPanelBackgroundColor
|
property color rightPanelBackgroundColor
|
||||||
|
|
|
@ -4,6 +4,7 @@ StatusBaseText 0.1 StatusBaseText.qml
|
||||||
StatusIcon 0.1 StatusIcon.qml
|
StatusIcon 0.1 StatusIcon.qml
|
||||||
StatusIconSettings 0.1 StatusIconSettings.qml
|
StatusIconSettings 0.1 StatusIconSettings.qml
|
||||||
StatusIconBackgroundSettings 0.1 StatusIconBackgroundSettings.qml
|
StatusIconBackgroundSettings 0.1 StatusIconBackgroundSettings.qml
|
||||||
|
StatusIdenticonRingSettings 0.1 StatusIdenticonRingSettings.qml
|
||||||
StatusImageSettings 0.1 StatusImageSettings.qml
|
StatusImageSettings 0.1 StatusImageSettings.qml
|
||||||
StatusModalHeaderSettings 0.1 StatusModalHeaderSettings.qml
|
StatusModalHeaderSettings 0.1 StatusModalHeaderSettings.qml
|
||||||
StatusTooltipSettings 0.1 StatusTooltipSettings.qml
|
StatusTooltipSettings 0.1 StatusTooltipSettings.qml
|
||||||
|
|
|
@ -324,5 +324,7 @@
|
||||||
<file>src/StatusQ/Components/StatusToastMessage.qml</file>
|
<file>src/StatusQ/Components/StatusToastMessage.qml</file>
|
||||||
<file>src/StatusQ/Components/StatusWizardStepper.qml</file>
|
<file>src/StatusQ/Components/StatusWizardStepper.qml</file>
|
||||||
<file>src/StatusQ/Components/StatusContactVerificationIcons.qml</file>
|
<file>src/StatusQ/Components/StatusContactVerificationIcons.qml</file>
|
||||||
|
<file>src/StatusQ/Controls/StatusIdenticonRing.qml</file>
|
||||||
|
<file>src/StatusQ/Core/StatusIdenticonRingSettings.qml</file>
|
||||||
</qresource>
|
</qresource>
|
||||||
</RCC>
|
</RCC>
|
||||||
|
|
Loading…
Reference in New Issue