syncthingtray/plasmoid/package5/contents/ui/main.qml

73 lines
2.6 KiB
QML

import QtQuick 2.2
import QtQuick.Layouts 1.1
import org.kde.plasma.plasmoid 2.0
import org.kde.kquickcontrolsaddons 2.0
Item {
id: syncthingApplet
Plasmoid.switchWidth: units.gridUnit * (plasmoid.nativeInterface.size.width + 1)
Plasmoid.switchHeight: units.gridUnit * (plasmoid.nativeInterface.size.height + 1)
Plasmoid.preferredRepresentation: Plasmoid.fullRepresentation
Plasmoid.compactRepresentation: CompactRepresentation {}
Plasmoid.fullRepresentation: FullRepresentation {
Layout.minimumWidth: units.gridUnit * plasmoid.nativeInterface.size.width
Layout.minimumHeight: units.gridUnit * plasmoid.nativeInterface.size.height
}
Plasmoid.icon: "syncthingtray"
Plasmoid.toolTipMainText: plasmoid.nativeInterface.statusText
Plasmoid.toolTipSubText: plasmoid.nativeInterface.additionalStatusText
Plasmoid.toolTipItem: ToolTipView {}
Plasmoid.hideOnWindowDeactivate: true
function action_showWebUI() {
plasmoid.nativeInterface.showWebUI()
}
function action_configure() {
plasmoid.nativeInterface.showSettingsDlg()
}
function action_showOwnId() {
plasmoid.nativeInterface.showOwnDeviceId()
}
function action_rescanAllDirs() {
plasmoid.nativeInterface.connection.rescanAllDirs()
}
function action_restartSyncthing() {
plasmoid.nativeInterface.connection.restart()
}
function action_showLog() {
plasmoid.nativeInterface.showLog()
}
function action_showErrors() {
plasmoid.nativeInterface.showInternalErrorsDialog()
}
function action_showAboutDialog() {
plasmoid.nativeInterface.showAboutDialog()
}
Component.onCompleted: {
plasmoid.nativeInterface.initEngine(this)
plasmoid.removeAction("configure")
plasmoid.setAction("showWebUI", qsTr("Open Syncthing"), "syncthing")
plasmoid.setAction("configure", qsTr("Settings"), "configure")
plasmoid.setAction("rescanAllDirs", qsTr("Rescan all folders"),
"folder-sync")
plasmoid.setAction("showOwnId", qsTr("Show own device ID"),
"view-barcode-qr")
plasmoid.setAction("restartSyncthing", qsTr("Restart Syncthing"),
"system-reboot")
plasmoid.setAction("showLog", qsTr("Log"), "text-x-generic")
plasmoid.setAction("showErrors", qsTr("Internal errors"), "data-error")
plasmoid.action("showErrors").visible = Qt.binding(() => { return plasmoid.nativeInterface.hasInternalErrors })
plasmoid.setAction("showAboutDialog", qsTr("About"), "help-about")
}
}