Warning, /utilities/ktrip/src/qml/LocationQueryPage.qml is written in an unsupported language. File is not indexed.
0001 /** 0002 * SPDX-FileCopyrightText: 2019 Nicolas Fella <nicolas.fella@gmx.de> 0003 * 0004 * SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL 0005 */ 0006 0007 import QtQuick 2.4 0008 import QtQuick.Layouts 1.1 0009 import QtQuick.Controls 2.4 0010 import org.kde.kirigami 2.12 as Kirigami 0011 import org.kde.kpublictransport 1.0 as KPT 0012 import org.kde.ktrip 1.0 0013 0014 Kirigami.ScrollablePage { 0015 property bool showCached: true 0016 property var callback 0017 0018 header: Kirigami.SearchField { 0019 id: queryTextField 0020 0021 visible: Manager.enabledBackends.length !== 0 0022 width: parent.width 0023 onAccepted: { 0024 queryModel.request = Controller.createLocationRequest(text); 0025 showCached = false; 0026 } 0027 } 0028 0029 ListView { 0030 id: locationView 0031 model: showCached ? cacheModel : queryModel 0032 0033 delegate: ItemDelegate { 0034 visible: Manager.enabledBackends.length !== 0 0035 text: location.name 0036 width: ListView.view.width 0037 onClicked: { 0038 cacheModel.addCachedLocation(location); 0039 callback(location); 0040 pageStack.pop(); 0041 } 0042 } 0043 0044 Kirigami.PlaceholderMessage { 0045 text: i18n("No locations found") 0046 visible: locationView.count === 0 && !queryModel.loading && !noProvidersMessage.visible 0047 anchors.centerIn: parent 0048 } 0049 0050 Kirigami.PlaceholderMessage { 0051 id: noProvidersMessage 0052 text: i18n("No providers enabled") 0053 visible: Manager.enabledBackends.length === 0 0054 helpfulAction: Action { 0055 text: i18n("Configure providers") 0056 icon.name: "configure" 0057 onTriggered: window.pageStack.push(Qt.resolvedUrl("BackendPage.qml")) 0058 } 0059 anchors.centerIn: parent 0060 } 0061 0062 BusyIndicator { 0063 running: queryModel.loading 0064 anchors.centerIn: parent 0065 } 0066 0067 KPT.LocationQueryModel { 0068 id: queryModel 0069 manager: Manager 0070 } 0071 0072 LocationCacheModel { 0073 id: cacheModel 0074 } 0075 } 0076 }