Changeset View
Changeset View
Standalone View
Standalone View
sfos/qml/pages/DevicePage.qml
- This file was added.
1 | /* | ||||
---|---|---|---|---|---|
2 | Copyright (C) 2013 Jolla Ltd. | ||||
3 | Contact: Thomas Perl <thomas.perl@jollamobile.com> | ||||
4 | All rights reserved. | ||||
5 | | ||||
6 | You may use this file under the terms of BSD license as follows: | ||||
7 | | ||||
8 | Redistribution and use in source and binary forms, with or without | ||||
9 | modification, are permitted provided that the following conditions are met: | ||||
10 | * Redistributions of source code must retain the above copyright | ||||
11 | notice, this list of conditions and the following disclaimer. | ||||
12 | * Redistributions in binary form must reproduce the above copyright | ||||
13 | notice, this list of conditions and the following disclaimer in the | ||||
14 | documentation and/or other materials provided with the distribution. | ||||
15 | * Neither the name of the Jolla Ltd nor the | ||||
16 | names of its contributors may be used to endorse or promote products | ||||
17 | derived from this software without specific prior written permission. | ||||
18 | | ||||
19 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND | ||||
20 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED | ||||
21 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE | ||||
22 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR | ||||
23 | ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES | ||||
24 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; | ||||
25 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND | ||||
26 | ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | ||||
27 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS | ||||
28 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||||
29 | */ | ||||
30 | | ||||
31 | import QtQuick 2.0 | ||||
32 | import Sailfish.Silica 1.0 | ||||
33 | import org.kde.kdeconnect 1.0 | ||||
34 | | ||||
35 | Page { | ||||
36 | id: deviceView | ||||
37 | property QtObject currentDevice | ||||
38 | | ||||
39 | // The effective value will be restricted by ApplicationWindow.allowedOrientations | ||||
40 | allowedOrientations: Orientation.Portrait | ||||
41 | | ||||
42 | Column { | ||||
43 | id: column | ||||
44 | anchors.fill: parent | ||||
45 | spacing: Theme.paddingMedium | ||||
46 | | ||||
47 | PageHeader { | ||||
48 | title: currentDevice.name | ||||
49 | } | ||||
50 | | ||||
51 | Label { | ||||
52 | anchors.horizontalCenter: parent.horizontalCenter | ||||
53 | text: "Device is " + (currentDevice.isTrusted ? "trusted" : "not trusted") | ||||
54 | } | ||||
55 | | ||||
56 | Button { | ||||
57 | id: text | ||||
58 | anchors.horizontalCenter: parent.horizontalCenter | ||||
59 | text: currentDevice.isTrusted ? "Un-Pair" : "Pair" | ||||
60 | | ||||
61 | onClicked: { | ||||
62 | if (currentDevice.isTrusted) { | ||||
63 | currentDevice.unpair() | ||||
64 | } else { | ||||
65 | currentDevice.requestPair() | ||||
66 | } | ||||
67 | } | ||||
68 | } | ||||
69 | | ||||
70 | Button { | ||||
71 | anchors.horizontalCenter: parent.horizontalCenter | ||||
72 | visible: currentDevice.isTrusted | ||||
73 | text: qsTr("Ping") | ||||
74 | onClicked: { | ||||
75 | currentDevice.pluginCall("ping", "sendPing"); | ||||
76 | } | ||||
77 | } | ||||
78 | | ||||
79 | PluginItem { | ||||
80 | anchors.horizontalCenter: parent.horizontalCenter | ||||
81 | text: ("Multimedia control") | ||||
82 | interfaceFactory: MprisDbusInterfaceFactory | ||||
83 | component: "mpris.qml" | ||||
84 | pluginName: "mprisremote" | ||||
85 | } | ||||
86 | PluginItem { | ||||
87 | anchors.horizontalCenter: parent.horizontalCenter | ||||
88 | text: ("Remote input") | ||||
89 | interfaceFactory: RemoteControlDbusInterfaceFactory | ||||
90 | component: "mousepad.qml" | ||||
91 | pluginName: "remotecontrol" | ||||
92 | } | ||||
93 | PluginItem { | ||||
94 | anchors.horizontalCenter: parent.horizontalCenter | ||||
95 | readonly property var lockIface: LockDeviceDbusInterfaceFactory.create(deviceView.currentDevice.id()) | ||||
96 | pluginName: "lockdevice" | ||||
97 | text: lockIface.isLocked ? ("Unlock") : ("Lock") | ||||
98 | onClicked: { | ||||
99 | lockIface.isLocked = !lockIface.isLocked; | ||||
100 | } | ||||
101 | } | ||||
102 | } | ||||
103 | } | ||||
104 | | ||||
105 | |