Merge PR #474: More fixes for the media player
This commit is contained in:
commit
6a17fcb2d9
@ -249,5 +249,7 @@
|
|||||||
<file>ui/images/facebook.svg</file>
|
<file>ui/images/facebook.svg</file>
|
||||||
<file>ui/images/help.svg</file>
|
<file>ui/images/help.svg</file>
|
||||||
<file>ui/images/discord.svg</file>
|
<file>ui/images/discord.svg</file>
|
||||||
|
<file>ui/images/media/equalizer.svg</file>
|
||||||
|
<file>ui/images/media/ambeo.svg</file>
|
||||||
</qresource>
|
</qresource>
|
||||||
</RCC>
|
</RCC>
|
||||||
|
|||||||
@ -46,6 +46,11 @@ Dialog {
|
|||||||
|
|
||||||
onClosed: root.destroy()
|
onClosed: root.destroy()
|
||||||
|
|
||||||
|
Connections {
|
||||||
|
target: root.parent
|
||||||
|
onDestroyed: root.destroy()
|
||||||
|
}
|
||||||
|
|
||||||
MouseArea {
|
MouseArea {
|
||||||
parent: app.overlay
|
parent: app.overlay
|
||||||
anchors.fill: parent
|
anchors.fill: parent
|
||||||
@ -56,13 +61,14 @@ Dialog {
|
|||||||
header: Item {
|
header: Item {
|
||||||
implicitHeight: headerRow.height + app.margins * 2
|
implicitHeight: headerRow.height + app.margins * 2
|
||||||
implicitWidth: parent.width
|
implicitWidth: parent.width
|
||||||
|
visible: root.title.length > 0
|
||||||
RowLayout {
|
RowLayout {
|
||||||
id: headerRow
|
id: headerRow
|
||||||
anchors { left: parent.left; right: parent.right; top: parent.top; margins: app.margins }
|
anchors { left: parent.left; right: parent.right; top: parent.top; margins: app.margins }
|
||||||
spacing: app.margins
|
spacing: app.margins
|
||||||
ColorIcon {
|
ColorIcon {
|
||||||
id: headerColorIcon
|
id: headerColorIcon
|
||||||
Layout.preferredHeight: app.iconSize * 2
|
Layout.preferredHeight: app.hugeIconSize
|
||||||
Layout.preferredWidth: height
|
Layout.preferredWidth: height
|
||||||
color: app.accentColor
|
color: app.accentColor
|
||||||
visible: name.length > 0
|
visible: name.length > 0
|
||||||
|
|||||||
@ -35,6 +35,7 @@ import QtQuick.Layouts 1.2
|
|||||||
import Nymea 1.0
|
import Nymea 1.0
|
||||||
import QtGraphicalEffects 1.0
|
import QtGraphicalEffects 1.0
|
||||||
import "../delegates"
|
import "../delegates"
|
||||||
|
import "../utils"
|
||||||
|
|
||||||
Item {
|
Item {
|
||||||
id: root
|
id: root
|
||||||
@ -56,8 +57,13 @@ Item {
|
|||||||
readonly property State volumeState: thing.stateByName("volume")
|
readonly property State volumeState: thing.stateByName("volume")
|
||||||
readonly property State muteState: thing.stateByName("mute")
|
readonly property State muteState: thing.stateByName("mute")
|
||||||
|
|
||||||
|
readonly property State equalizerPresetState: thing.stateByName("equalizerPreset")
|
||||||
|
readonly property State nightModeState: thing.stateByName("nightMode")
|
||||||
readonly property State likeState: thing.stateByName("like")
|
readonly property State likeState: thing.stateByName("like")
|
||||||
|
|
||||||
|
// NOTE: This is not in any interface, special feature just for AMBEO
|
||||||
|
readonly property State ambeoModeState: thing.stateByName("ambeoMode")
|
||||||
|
|
||||||
readonly property bool hasNavigationPatd: thing.thingClass.interfaces.indexOf("navigationpad") >= 0
|
readonly property bool hasNavigationPatd: thing.thingClass.interfaces.indexOf("navigationpad") >= 0
|
||||||
|
|
||||||
clip: true
|
clip: true
|
||||||
@ -65,20 +71,21 @@ Item {
|
|||||||
QtObject {
|
QtObject {
|
||||||
id: d
|
id: d
|
||||||
property var browser: null
|
property var browser: null
|
||||||
property int pendingInputSourceSelectId: -1
|
property int pendingCallId: -1
|
||||||
}
|
}
|
||||||
|
|
||||||
Connections {
|
Connections {
|
||||||
target: engine.thingManager
|
target: engine.thingManager
|
||||||
onExecuteActionReply: {
|
onExecuteActionReply: {
|
||||||
if (commandId == d.pendingInputSourceSelectId) {
|
if (commandId == d.pendingCallId) {
|
||||||
if (params.deviceError !== "DeviceErrorNoError") {
|
if (params.deviceError !== "DeviceErrorNoError") {
|
||||||
var errorDialog = Qt.createComponent(Qt.resolvedUrl("../components/ErrorDialog.qml"));
|
var errorDialog = Qt.createComponent(Qt.resolvedUrl("../components/ErrorDialog.qml"));
|
||||||
var text
|
var dialogParams = {}
|
||||||
if (params.displayMessage.length > 0) {
|
dialogParams.errorCode = params.deviceError
|
||||||
text = params.displayMessage
|
if (params.displayMessage && params.displayMessage.length > 0) {
|
||||||
|
dialogParams.text = params.displayMessage
|
||||||
}
|
}
|
||||||
var popup = errorDialog.createObject(app, {text: text})
|
var popup = errorDialog.createObject(app, dialogParams)
|
||||||
popup.open()
|
popup.open()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -231,8 +238,17 @@ Item {
|
|||||||
d.browser.show();
|
d.browser.show();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
ProgressButton {
|
||||||
|
Layout.preferredHeight: app.iconSize
|
||||||
|
Layout.preferredWidth: app.iconSize
|
||||||
|
longpressEnabled: false
|
||||||
|
visible: root.hasNavigationPatd
|
||||||
|
imageSource: "../images/navigationpad.svg"
|
||||||
|
onClicked: pageStack.push(navigationPadPage)
|
||||||
|
}
|
||||||
RowLayout {
|
RowLayout {
|
||||||
ProgressButton {
|
ProgressButton {
|
||||||
|
id: inputSourceButton
|
||||||
Layout.preferredHeight: app.iconSize
|
Layout.preferredHeight: app.iconSize
|
||||||
Layout.preferredWidth: app.iconSize
|
Layout.preferredWidth: app.iconSize
|
||||||
longpressEnabled: false
|
longpressEnabled: false
|
||||||
@ -246,23 +262,52 @@ Item {
|
|||||||
Label {
|
Label {
|
||||||
Layout.fillWidth: true
|
Layout.fillWidth: true
|
||||||
text: root.inputSourceState ? root.inputSourceState.value : ""
|
text: root.inputSourceState ? root.inputSourceState.value : ""
|
||||||
|
wrapMode: Text.WordWrap
|
||||||
|
elide: Text.ElideRight
|
||||||
font.pixelSize: app.smallFont
|
font.pixelSize: app.smallFont
|
||||||
|
MouseArea { anchors.fill: parent; onClicked: inputSourceButton.clicked() }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
ColorIcon {
|
||||||
|
Layout.preferredHeight: app.iconSize
|
||||||
|
Layout.preferredWidth: app.iconSize * 3
|
||||||
|
visible: root.ambeoModeState !== null
|
||||||
|
name: "../images/media/ambeo.svg"
|
||||||
|
color: root.ambeoModeState && root.ambeoModeState.value !== "Off" ? app.accentColor : keyColor
|
||||||
|
MouseArea {
|
||||||
|
anchors.fill: parent
|
||||||
|
onClicked: {
|
||||||
|
var popup = ambeoModeDialogComponent.createObject(root)
|
||||||
|
popup.open()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
ProgressButton {
|
ProgressButton {
|
||||||
Layout.preferredHeight: app.iconSize
|
Layout.preferredHeight: app.iconSize
|
||||||
Layout.preferredWidth: app.iconSize
|
Layout.preferredWidth: app.iconSize
|
||||||
longpressEnabled: false
|
longpressEnabled: false
|
||||||
visible: root.hasNavigationPatd
|
visible: root.nightModeState !== null
|
||||||
imageSource: "../images/navigationpad.svg"
|
imageSource: "../images/weathericons/weather-clear-night.svg"
|
||||||
onClicked: pageStack.push(navigationPadPage)
|
color: root.nightModeState && root.nightModeState.value === true ? app.accentColor : keyColor
|
||||||
|
onClicked: d.pendingCallId = engine.thingManager.executeAction(root.thing.id, root.nightModeState.stateTypeId, [{paramTypeId: root.nightModeState.stateTypeId, value: !root.nightModeState.value}])
|
||||||
|
}
|
||||||
|
ProgressButton {
|
||||||
|
Layout.preferredHeight: app.iconSize
|
||||||
|
Layout.preferredWidth: app.iconSize
|
||||||
|
longpressEnabled: false
|
||||||
|
visible: root.equalizerPresetState !== null
|
||||||
|
imageSource: "../images/media/equalizer.svg"
|
||||||
|
onClicked: {
|
||||||
|
var dialog = equalizerComponent.createObject(root)
|
||||||
|
dialog.open()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
ProgressButton {
|
ProgressButton {
|
||||||
id: volumeButton
|
id: volumeButton
|
||||||
Layout.preferredHeight: app.iconSize
|
Layout.preferredHeight: app.iconSize
|
||||||
Layout.preferredWidth: app.iconSize
|
Layout.preferredWidth: app.iconSize
|
||||||
visible: root.hasVolumeControl
|
visible: root.hasVolumeControl
|
||||||
|
longpressEnabled: false
|
||||||
imageSource: root.muteState && root.muteState.value === true ?
|
imageSource: root.muteState && root.muteState.value === true ?
|
||||||
"../images/audio-speakers-muted-symbolic.svg"
|
"../images/audio-speakers-muted-symbolic.svg"
|
||||||
: "../images/audio-speakers-symbolic.svg"
|
: "../images/audio-speakers-symbolic.svg"
|
||||||
@ -279,9 +324,6 @@ Item {
|
|||||||
var sliderPane = volumeSliderPaneComponent.createObject(root, props)
|
var sliderPane = volumeSliderPaneComponent.createObject(root, props)
|
||||||
sliderPane.open()
|
sliderPane.open()
|
||||||
}
|
}
|
||||||
onLongpressed: {
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -297,7 +339,11 @@ Item {
|
|||||||
bottomPadding: app.margins / 2
|
bottomPadding: app.margins / 2
|
||||||
modal: true
|
modal: true
|
||||||
|
|
||||||
property int pendingVolumeValue: -1
|
ActionQueue {
|
||||||
|
id: volumeActionQueue
|
||||||
|
thing: root.thing
|
||||||
|
stateType: root.thing.thingClass.stateTypes.findByName("volume")
|
||||||
|
}
|
||||||
|
|
||||||
contentItem: ColumnLayout {
|
contentItem: ColumnLayout {
|
||||||
ProgressButton {
|
ProgressButton {
|
||||||
@ -315,14 +361,14 @@ Item {
|
|||||||
onClicked: engine.thingManager.executeAction(root.thing.id, root.thing.thingClass.actionTypes.findByName("decreaseVolume").id);
|
onClicked: engine.thingManager.executeAction(root.thing.id, root.thing.thingClass.actionTypes.findByName("decreaseVolume").id);
|
||||||
}
|
}
|
||||||
|
|
||||||
ThrottledSlider {
|
Slider {
|
||||||
Layout.fillHeight: true
|
Layout.fillHeight: true
|
||||||
visible: root.volumeState !== null
|
visible: root.volumeState !== null
|
||||||
from: 0
|
from: 0
|
||||||
to: 100
|
to: 100
|
||||||
value: root.volumeState.value
|
value: volumeActionQueue.pendingValue || root.volumeState.value
|
||||||
orientation: Qt.Vertical
|
orientation: Qt.Vertical
|
||||||
onMoved: engine.thingManager.executeAction(root.thing.id, root.volumeState.stateTypeId, [{paramTypeId: root.volumeState.stateTypeId, value: value}])
|
onMoved: volumeActionQueue.sendValue(value)
|
||||||
}
|
}
|
||||||
|
|
||||||
ProgressButton {
|
ProgressButton {
|
||||||
@ -442,6 +488,7 @@ Item {
|
|||||||
id: inputSourceSelectDialogComponent
|
id: inputSourceSelectDialogComponent
|
||||||
MeaDialog {
|
MeaDialog {
|
||||||
id: inputSourceSelectDialog
|
id: inputSourceSelectDialog
|
||||||
|
headerIcon: "../images/state-in.svg"
|
||||||
title: qsTr("Select input")
|
title: qsTr("Select input")
|
||||||
standardButtons: Dialog.NoButton
|
standardButtons: Dialog.NoButton
|
||||||
|
|
||||||
@ -457,7 +504,7 @@ Item {
|
|||||||
text: modelData
|
text: modelData
|
||||||
checked: root.inputSourceState.value === modelData
|
checked: root.inputSourceState.value === modelData
|
||||||
onClicked: {
|
onClicked: {
|
||||||
d.pendingInputSourceSelectId = engine.thingManager.executeAction(root.thing.id, root.inputSourceState.stateTypeId, [{paramTypeId: root.inputSourceState.stateTypeId, value: modelData}])
|
d.pendingCallId = engine.thingManager.executeAction(root.thing.id, root.inputSourceState.stateTypeId, [{paramTypeId: root.inputSourceState.stateTypeId, value: modelData}])
|
||||||
inputSourceSelectDialog.close();
|
inputSourceSelectDialog.close();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -465,4 +512,62 @@ Item {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Component {
|
||||||
|
id: equalizerComponent
|
||||||
|
MeaDialog {
|
||||||
|
id: equalizer
|
||||||
|
headerIcon: "../images/media/equalizer.svg"
|
||||||
|
title: qsTr("Equalizer preset")
|
||||||
|
standardButtons: Dialog.NoButton
|
||||||
|
ListView {
|
||||||
|
id: inputSourceListView
|
||||||
|
Layout.fillWidth: true
|
||||||
|
Layout.fillHeight: true
|
||||||
|
Layout.preferredHeight: 200
|
||||||
|
clip: true
|
||||||
|
model: root.thing.thingClass.stateTypes.findByName("equalizerPreset").allowedValues
|
||||||
|
delegate: RadioDelegate {
|
||||||
|
width: inputSourceListView.width
|
||||||
|
text: modelData
|
||||||
|
checked: root.equalizerPresetState.value === modelData
|
||||||
|
onClicked: {
|
||||||
|
d.pendingCallId = engine.thingManager.executeAction(root.thing.id, root.equalizerPresetState.stateTypeId, [{paramTypeId: root.equalizerPresetState.stateTypeId, value: modelData}])
|
||||||
|
equalizer.close();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Component {
|
||||||
|
id: ambeoModeDialogComponent
|
||||||
|
MeaDialog {
|
||||||
|
id: ambeoModeDialog
|
||||||
|
standardButtons: Dialog.NoButton
|
||||||
|
ColorIcon {
|
||||||
|
Layout.preferredHeight: app.hugeIconSize
|
||||||
|
Layout.preferredWidth: app.hugeIconSize * 3
|
||||||
|
Layout.alignment: Qt.AlignHCenter
|
||||||
|
name: "../images/media/ambeo.svg"
|
||||||
|
color: app.accentColor
|
||||||
|
}
|
||||||
|
|
||||||
|
ListView {
|
||||||
|
id: ambeoModeListView
|
||||||
|
Layout.fillWidth: true
|
||||||
|
Layout.fillHeight: true
|
||||||
|
Layout.preferredHeight: 200
|
||||||
|
clip: true
|
||||||
|
model: root.thing.thingClass.stateTypes.findByName("ambeoMode").allowedValues
|
||||||
|
delegate: RadioDelegate {
|
||||||
|
width: ambeoModeListView.width
|
||||||
|
text: modelData
|
||||||
|
checked: root.ambeoModeState.value === modelData
|
||||||
|
onClicked: {
|
||||||
|
d.pendingCallId = engine.thingManager.executeAction(root.thing.id, root.ambeoModeState.stateTypeId, [{paramTypeId: root.ambeoModeState.stateTypeId, value: modelData}])
|
||||||
|
ambeoModeDialog.close();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
77
nymea-app/ui/images/media/ambeo.svg
Normal file
77
nymea-app/ui/images/media/ambeo.svg
Normal file
@ -0,0 +1,77 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<svg
|
||||||
|
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||||
|
xmlns:cc="http://creativecommons.org/ns#"
|
||||||
|
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||||
|
xmlns:svg="http://www.w3.org/2000/svg"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
|
id="svg4874"
|
||||||
|
height="96"
|
||||||
|
viewBox="0 0 288 96.000001"
|
||||||
|
width="288"
|
||||||
|
version="1.1"
|
||||||
|
sodipodi:docname="ambeo.svg"
|
||||||
|
inkscape:version="1.0.1 (1.0.1+r74)">
|
||||||
|
<defs
|
||||||
|
id="defs12" />
|
||||||
|
<sodipodi:namedview
|
||||||
|
pagecolor="#ffffff"
|
||||||
|
bordercolor="#666666"
|
||||||
|
borderopacity="1"
|
||||||
|
objecttolerance="10"
|
||||||
|
gridtolerance="10"
|
||||||
|
guidetolerance="10"
|
||||||
|
inkscape:pageopacity="0"
|
||||||
|
inkscape:pageshadow="2"
|
||||||
|
inkscape:window-width="1380"
|
||||||
|
inkscape:window-height="873"
|
||||||
|
id="namedview10"
|
||||||
|
showgrid="true"
|
||||||
|
inkscape:zoom="1.8415884"
|
||||||
|
inkscape:cx="121.33265"
|
||||||
|
inkscape:cy="50.848551"
|
||||||
|
inkscape:window-x="60"
|
||||||
|
inkscape:window-y="27"
|
||||||
|
inkscape:window-maximized="1"
|
||||||
|
inkscape:current-layer="svg4874">
|
||||||
|
<inkscape:grid
|
||||||
|
type="xygrid"
|
||||||
|
id="grid843" />
|
||||||
|
</sodipodi:namedview>
|
||||||
|
<metadata
|
||||||
|
id="metadata4879">
|
||||||
|
<rdf:RDF>
|
||||||
|
<cc:Work
|
||||||
|
rdf:about="">
|
||||||
|
<dc:format>image/svg+xml</dc:format>
|
||||||
|
<dc:type
|
||||||
|
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||||
|
<dc:title></dc:title>
|
||||||
|
</cc:Work>
|
||||||
|
</rdf:RDF>
|
||||||
|
</metadata>
|
||||||
|
<path
|
||||||
|
style="display:inline;fill:#808080;fill-opacity:1;stroke-width:0.358212"
|
||||||
|
d="m 231.80139,66.028835 c -11.73211,-2.974526 -17.67502,-16.426722 -11.97854,-27.114388 3.31272,-6.215292 9.15129,-9.658283 16.40816,-9.675803 4.1535,-0.01 7.17929,0.860182 10.34783,2.976043 5.32737,3.557479 8.26535,9.084294 8.2749,15.566501 0.0114,8.178331 -4.61871,14.811194 -12.35403,17.695161 -2.79399,1.041656 -7.7578,1.297986 -10.69832,0.552486 z m 8.12651,-3.215384 c 7.0007,-1.823442 11.7062,-7.778927 11.7062,-14.815871 0,-4.83256 -1.52576,-8.395053 -4.97881,-11.62498 -2.13924,-2.000998 -3.97745,-2.955734 -7.10319,-3.689246 -7.59188,-1.781551 -15.63927,2.999375 -18.09078,10.747673 -1.05364,3.330125 -0.77527,7.53094 0.70928,10.703357 3.23367,6.910151 10.64377,10.531918 17.7573,8.679067 z m -207.4706,0.64366 c 1.63194,-3.582789 5.706048,-12.613381 9.098657,-20.167873 1.636822,-3.644795 3.708305,-8.238857 4.603291,-10.209004 L 47.786492,29.4981 h 1.462277 1.462278 l 1.203738,2.686587 c 0.662066,1.477617 2.647827,5.910495 4.412822,9.850823 1.764976,3.940328 4.842655,10.801557 6.839266,15.247188 1.996605,4.445598 3.630208,8.202227 3.630208,8.348025 0,0.145792 -0.75584,0.215963 -1.679637,0.155904 l -1.67967,-0.109149 -2.315519,-5.104508 -2.315538,-5.104516 h -9.39387 c -7.496069,0 -9.475802,0.09867 -9.799323,0.488528 -0.222986,0.268686 -1.340107,2.565711 -2.482474,5.104503 l -2.07705,4.615993 -1.85323,0.108007 -1.85323,0.108002 z M 57.246343,52.334074 c 0.148036,-0.243654 -1.061542,-3.032684 -6.058839,-13.970238 -0.922649,-2.019414 -1.79552,-3.671675 -1.939669,-3.671675 -0.207224,0 -7.136513,14.830051 -8.088713,17.311443 -0.210708,0.549099 0.444401,0.59913 7.847039,0.59913 4.442315,0 8.150392,-0.120909 8.240182,-0.26866 z m 24.95382,-4.208982 V 30.124973 c 0,-0.147764 0.712758,-0.268641 1.583897,-0.268641 h 1.583903 l 6.634137,8.702424 6.63413,8.702425 1.36412,-1.734426 c 0.75026,-0.953933 3.76663,-4.910334 6.70306,-8.791991 l 5.33893,-7.057551 h 1.55664 1.55662 V 47.76649 65.85615 h -1.61193 -1.61197 V 50.781427 c 0,-9.000008 -0.13258,-15.0266 -0.32884,-14.955319 -0.18085,0.06572 -2.93608,3.544804 -6.1227,7.731387 -5.07281,6.664661 -5.91662,7.61199 -6.78017,7.61199 -0.86309,0 -1.72044,-0.96038 -6.86247,-7.687201 -3.23186,-4.227974 -5.997033,-7.693668 -6.14479,-7.701549 -0.147757,-0.0082 -0.268662,6.755868 -0.268662,15.030543 V 65.85615 H 83.812112 82.200163 Z M 134.14081,47.745208 V 29.633844 l 9.40304,0.111302 c 9.00865,0.106555 9.48204,0.146954 11.28626,0.962455 3.41037,1.541478 4.91277,4.088346 4.8862,8.283167 -0.0163,2.584216 -0.6345,4.13709 -2.37893,5.976093 l -1.08158,1.14022 1.66125,0.78089 c 3.24897,1.5272 5.03449,4.711637 5.01195,8.938736 -0.0254,4.748403 -2.37064,7.924342 -6.88549,9.324108 -2.03103,0.629683 -3.3348,0.705815 -12.08962,0.705815 h -9.81308 z m 20.58906,14.522269 c 4.76581,-1.438082 6.418,-8.02694 2.93887,-11.720033 -2.02442,-2.148904 -3.4066,-2.422352 -12.24428,-2.422352 h -7.88064 l -0.0976,6.97455 c -0.0537,3.836005 -0.0115,7.201799 0.0963,7.479521 0.16169,0.421347 1.48252,0.472921 7.97823,0.311581 4.42776,-0.109869 8.39879,-0.378724 9.2092,-0.623267 z M 152.2224,44.680766 c 3.41377,-0.947758 5.25536,-4.646053 3.97845,-7.989585 -1.23075,-3.222721 -2.51224,-3.679568 -11.04166,-3.936345 -3.67884,-0.110732 -6.93759,-0.105848 -7.24163,0.01148 -0.46814,0.179626 -0.55285,1.139434 -0.55285,6.263402 v 6.051279 l 6.71646,-0.0026 c 3.79456,-6.34e-4 7.33628,-0.174059 8.14123,-0.397533 z m 24.18733,19.75468 v -1.428962 l 14.71733,-0.09738 c 9.51987,-0.06298 14.80396,0.02919 14.96268,0.260837 0.13502,0.197023 0.24204,0.841812 0.238,1.432841 l -0.007,1.074633 -14.95531,0.09352 -14.95532,0.09351 v -1.428948 z m 4.5651,-16.758108 c -0.0736,-0.147769 -0.12354,-0.832853 -0.11078,-1.522406 l 0.0232,-1.253728 h 10.38815 10.38813 l 0.1102,1.522388 0.11019,1.522394 h -10.38757 c -5.71318,0 -10.44786,-0.120916 -10.52153,-0.268648 z m -3.84867,-16.567285 v -1.43284 h 14.14934 14.14933 v 1.43284 1.432847 H 191.2755 177.12616 Z"
|
||||||
|
id="path847"
|
||||||
|
sodipodi:nodetypes="cssscscsssssssssccccccssccccscccccscssssccsscccsccccccccscssccscccccccssscscsscccsscccccccsscsccccccssscccccsscccccsssccccccccc" />
|
||||||
|
<g
|
||||||
|
id="layer1"
|
||||||
|
transform="translate(73.857,-78.505)">
|
||||||
|
<rect
|
||||||
|
id="rect4782"
|
||||||
|
style="color:#000000;fill:none"
|
||||||
|
transform="rotate(90)"
|
||||||
|
height="96"
|
||||||
|
width="96"
|
||||||
|
y="-28.143"
|
||||||
|
x="78.504997" />
|
||||||
|
<path
|
||||||
|
id="path4179"
|
||||||
|
style="color:#000000;font-variant-ligatures:none;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;text-transform:none;white-space:normal;shape-padding:0;isolation:auto;mix-blend-mode:normal;solid-color:#000000;fill:#808080;color-rendering:auto;image-rendering:auto;shape-rendering:auto"
|
||||||
|
d="m -47.881,90.506 c -5.0328,0.05818 -8.7136,-0.12028 -11.725,1.541 -1.5055,0.83064 -2.6968,2.2356 -3.3555,3.9902 -0.65866,1.7547 -0.89648,3.8383 -0.89648,6.4688 v 52 c 0,2.6304 0.23782,4.7121 0.89648,6.4668 0.65866,1.7546 1.85,3.1596 3.3555,3.9902 3.011,1.6613 6.6918,1.4848 11.725,1.543 h 0.01172 236.023 0.0117 c 5.0328,-0.0582 8.7136,0.11832 11.725,-1.543 1.5055,-0.83064 2.6968,-2.2356 3.3555,-3.9902 0.65866,-1.7547 0.89648,-3.8364 0.89648,-6.4668 v -52 c 0,-2.6304 -0.23782,-4.7141 -0.89648,-6.4688 -0.66,-1.759 -1.851,-3.163 -3.356,-3.994 -3.011,-1.661 -6.692,-1.483 -11.725,-1.541 h -0.0117 -236.023 -0.01172 z m 0.02344,4 h 236 c 5.0383,0.05877 8.3519,0.23688 9.8164,1.0449 0.73364,0.40478 1.1527,0.85295 1.543,1.8926 0.39025,1.0396 0.64062,2.6929 0.64062,5.0625 v 52 c 0,2.3696 -0.25037,4.0229 -0.64062,5.0625 -0.39025,1.0396 -0.80933,1.4878 -1.543,1.8926 -1.4645,0.80804 -4.7782,0.98616 -9.8164,1.0449 h -235.977 -0.02344 c -5.0383,-0.0588 -8.3519,-0.23688 -9.8164,-1.0449 -0.73364,-0.40478 -1.1508,-0.85296 -1.541,-1.8926 -0.39025,-1.0396 -0.64258,-2.6929 -0.64258,-5.0625 v -52 c 0,-2.3696 0.25232,-4.0229 0.64258,-5.0625 0.39025,-1.0396 0.80738,-1.4878 1.541,-1.8926 1.4645,-0.80804 4.7782,-0.98616 9.8164,-1.0449 z"
|
||||||
|
sodipodi:nodetypes="cccssccccccccsscccccccccscsssscccscsscccc" />
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 7.7 KiB |
174
nymea-app/ui/images/media/equalizer.svg
Normal file
174
nymea-app/ui/images/media/equalizer.svg
Normal file
@ -0,0 +1,174 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||||
|
|
||||||
|
<svg
|
||||||
|
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||||
|
xmlns:cc="http://creativecommons.org/ns#"
|
||||||
|
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||||
|
xmlns:svg="http://www.w3.org/2000/svg"
|
||||||
|
xmlns="http://www.w3.org/2000/svg"
|
||||||
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||||
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||||
|
width="96"
|
||||||
|
height="96"
|
||||||
|
id="svg4874"
|
||||||
|
version="1.1"
|
||||||
|
inkscape:version="0.91+devel r"
|
||||||
|
viewBox="0 0 96 96.000001"
|
||||||
|
sodipodi:docname="filters.svg">
|
||||||
|
<defs
|
||||||
|
id="defs4876" />
|
||||||
|
<sodipodi:namedview
|
||||||
|
id="base"
|
||||||
|
pagecolor="#ffffff"
|
||||||
|
bordercolor="#666666"
|
||||||
|
borderopacity="1.0"
|
||||||
|
inkscape:pageopacity="0.0"
|
||||||
|
inkscape:pageshadow="2"
|
||||||
|
inkscape:zoom="7.2057594"
|
||||||
|
inkscape:cx="48.929688"
|
||||||
|
inkscape:cy="39.609456"
|
||||||
|
inkscape:document-units="px"
|
||||||
|
inkscape:current-layer="g4780"
|
||||||
|
showgrid="true"
|
||||||
|
showborder="true"
|
||||||
|
fit-margin-top="0"
|
||||||
|
fit-margin-left="0"
|
||||||
|
fit-margin-right="0"
|
||||||
|
fit-margin-bottom="0"
|
||||||
|
inkscape:snap-bbox="true"
|
||||||
|
inkscape:bbox-paths="true"
|
||||||
|
inkscape:bbox-nodes="true"
|
||||||
|
inkscape:snap-bbox-edge-midpoints="true"
|
||||||
|
inkscape:snap-bbox-midpoints="true"
|
||||||
|
inkscape:object-paths="true"
|
||||||
|
inkscape:snap-intersection-paths="true"
|
||||||
|
inkscape:object-nodes="true"
|
||||||
|
inkscape:snap-smooth-nodes="true"
|
||||||
|
inkscape:snap-midpoints="true"
|
||||||
|
inkscape:snap-object-midpoints="true"
|
||||||
|
inkscape:snap-center="true"
|
||||||
|
showguides="true"
|
||||||
|
inkscape:guide-bbox="true">
|
||||||
|
<inkscape:grid
|
||||||
|
type="xygrid"
|
||||||
|
id="grid5451"
|
||||||
|
empspacing="8" />
|
||||||
|
<sodipodi:guide
|
||||||
|
orientation="1,0"
|
||||||
|
position="8,-8.0000001"
|
||||||
|
id="guide4063" />
|
||||||
|
<sodipodi:guide
|
||||||
|
orientation="1,0"
|
||||||
|
position="4,-8.0000001"
|
||||||
|
id="guide4065" />
|
||||||
|
<sodipodi:guide
|
||||||
|
orientation="0,1"
|
||||||
|
position="-8,88.000001"
|
||||||
|
id="guide4067" />
|
||||||
|
<sodipodi:guide
|
||||||
|
orientation="0,1"
|
||||||
|
position="-8,92.000001"
|
||||||
|
id="guide4069" />
|
||||||
|
<sodipodi:guide
|
||||||
|
orientation="0,1"
|
||||||
|
position="104,4"
|
||||||
|
id="guide4071" />
|
||||||
|
<sodipodi:guide
|
||||||
|
orientation="0,1"
|
||||||
|
position="-5,8.0000001"
|
||||||
|
id="guide4073" />
|
||||||
|
<sodipodi:guide
|
||||||
|
orientation="1,0"
|
||||||
|
position="92,-8.0000001"
|
||||||
|
id="guide4075" />
|
||||||
|
<sodipodi:guide
|
||||||
|
orientation="1,0"
|
||||||
|
position="88,-8.0000001"
|
||||||
|
id="guide4077" />
|
||||||
|
<sodipodi:guide
|
||||||
|
orientation="0,1"
|
||||||
|
position="-8,84.000001"
|
||||||
|
id="guide4074" />
|
||||||
|
<sodipodi:guide
|
||||||
|
orientation="1,0"
|
||||||
|
position="12,-8.0000001"
|
||||||
|
id="guide4076" />
|
||||||
|
<sodipodi:guide
|
||||||
|
orientation="0,1"
|
||||||
|
position="-5,12"
|
||||||
|
id="guide4078" />
|
||||||
|
<sodipodi:guide
|
||||||
|
orientation="1,0"
|
||||||
|
position="84,-9.0000001"
|
||||||
|
id="guide4080" />
|
||||||
|
<sodipodi:guide
|
||||||
|
position="48,83.568528"
|
||||||
|
orientation="1,0"
|
||||||
|
id="guide4170" />
|
||||||
|
</sodipodi:namedview>
|
||||||
|
<metadata
|
||||||
|
id="metadata4879">
|
||||||
|
<rdf:RDF>
|
||||||
|
<cc:Work
|
||||||
|
rdf:about="">
|
||||||
|
<dc:format>image/svg+xml</dc:format>
|
||||||
|
<dc:type
|
||||||
|
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||||
|
<dc:title />
|
||||||
|
</cc:Work>
|
||||||
|
</rdf:RDF>
|
||||||
|
</metadata>
|
||||||
|
<g
|
||||||
|
inkscape:label="Layer 1"
|
||||||
|
inkscape:groupmode="layer"
|
||||||
|
id="layer1"
|
||||||
|
transform="translate(67.857146,-78.50504)">
|
||||||
|
<g
|
||||||
|
transform="matrix(0,-1,-1,0,373.50506,516.50504)"
|
||||||
|
id="g4845"
|
||||||
|
style="display:inline">
|
||||||
|
<g
|
||||||
|
inkscape:export-ydpi="90"
|
||||||
|
inkscape:export-xdpi="90"
|
||||||
|
inkscape:export-filename="next01.png"
|
||||||
|
transform="matrix(-0.9996045,0,0,1,575.94296,-611.00001)"
|
||||||
|
id="g4778"
|
||||||
|
inkscape:label="Layer 1">
|
||||||
|
<g
|
||||||
|
transform="matrix(-1,0,0,1,575.99999,611)"
|
||||||
|
id="g4780"
|
||||||
|
style="display:inline">
|
||||||
|
<rect
|
||||||
|
style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:none;stroke:none;stroke-width:4;marker:none;enable-background:accumulate"
|
||||||
|
id="rect4782"
|
||||||
|
width="96.037987"
|
||||||
|
height="96"
|
||||||
|
x="-438.00244"
|
||||||
|
y="345.36221"
|
||||||
|
transform="scale(-1,1)" />
|
||||||
|
<path
|
||||||
|
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#808080;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4.00079107;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
||||||
|
d="m 411.99219,437.36133 c -7.71047,0 -14.00391,-6.2913 -14.00391,-14 0,-7.7087 6.29344,-14 14.00391,-14 7.71047,0 14.00586,6.2913 14.00586,14 0,7.7087 -6.29539,14 -14.00586,14 z m 0,-4 c 5.54914,0 10.0039,-4.45434 10.0039,-10 0,-5.54566 -4.45476,-9.99805 -10.0039,-9.99805 -5.54914,0 -10.00391,4.45239 -10.00391,9.99805 0,5.54566 4.45477,10 10.00391,10 z"
|
||||||
|
id="ellipse4189"
|
||||||
|
inkscape:connector-curvature="0" />
|
||||||
|
<path
|
||||||
|
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#808080;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4.00079107;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
||||||
|
d="m 367.97461,377.36133 c -7.71066,0 -14.00391,-6.29111 -14.00391,-14 0,-7.70889 6.29325,-14 14.00391,-14 7.71066,0 14.00586,6.29111 14.00586,14 0,7.70889 -6.2952,14 -14.00586,14 z m 0,-4 c 5.54933,0 10.00391,-4.45416 10.00391,-10 0,-5.54585 -4.45458,-9.99805 -10.00391,-9.99805 -5.54933,0 -10.00391,4.4522 -10.00391,9.99805 0,5.54584 4.45458,10 10.00391,10 z"
|
||||||
|
id="ellipse4199"
|
||||||
|
inkscape:connector-curvature="0" />
|
||||||
|
<path
|
||||||
|
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#808080;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4.00079107;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
||||||
|
d="m 409.99219,349.36133 v 52 h 4 v -52 z"
|
||||||
|
id="path4201"
|
||||||
|
inkscape:connector-curvature="0" />
|
||||||
|
<path
|
||||||
|
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#808080;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4.00079107;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
|
||||||
|
d="m 365.97461,375.36133 v 62 h 4 v -62 z"
|
||||||
|
id="path4203"
|
||||||
|
inkscape:connector-curvature="0" />
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 10 KiB |
Reference in New Issue
Block a user