Purpose

reviewboardplugin_config.qml
1/*
2 SPDX-FileCopyrightText: 2015 Aleix Pol Gonzalez <aleixpol@kde.org>
3
4 SPDX-License-Identifier: LGPL-2.1-or-later
5*/
6
7import QtQuick 2.2
8import QtQuick.Controls 2.15
9import QtQuick.Layouts 1.1
10import org.kde.purpose.reviewboard 1.0
11
12ColumnLayout {
13 id: root
14 property alias server: serverField.text
15 property alias username: usernameField.text
16 property alias password: passwordField.text
17 property alias repository: repositoriesCombo.currentText
18 property string updateRR: ""
19 property string baseDir
20 property string localBaseDir
21 property variant extraData: rcfile.extraData
22
23 Label {
24 text: root.updateRR
25 }
26
27 ReviewboardRC {
28 id: rcfile
29 path: root.localBaseDir + "/.reviewboardrc"
30 }
31
32 Label { text: i18nd("purpose6_reviewboard", "Server:") }
33 TextField {
34 id: serverField
35 Layout.fillWidth: true
36 text: rcfile.server
37 }
38 Label { text: i18nd("purpose6_reviewboard", "Username:") }
39 TextField {
40 id: usernameField
41 Layout.fillWidth: true
42 }
43 Label { text: i18nd("purpose6_reviewboard", "Password:") }
44 TextField {
45 id: passwordField
46 echoMode: TextInput.Password
47 Layout.fillWidth: true
48 }
49
50 Label { text: i18nd("purpose6_reviewboard", "Repository:") }
51 ComboBox {
52 id: repositoriesCombo
53 Layout.fillWidth: true
54 textRole: "display"
55 model: RepositoriesModel {
56 server: serverField.text
57 onRepositoriesChanged: {
58 repositoriesCombo.currentIndex = findRepository(rcfile.repository);
59 }
60 }
61 }
62
63 function refreshUpdateRR()
64 {
65 root.updateRR = (updateRRCombo.currentIndex>=0 && update.checked) ? reviewsList.get(updateRRCombo.currentIndex, "toolTip") : ""
66 }
67
68 Item {
69 Layout.fillWidth: true
70 height: update.height
71
72 CheckBox {
73 anchors.centerIn: parent
74 id: update
75 text: i18nd("purpose6_reviewboard", "Update Review:")
76 enabled: updateRRCombo.count > 0
77 onCheckedChanged: {
78 root.refreshUpdateRR();
79 }
80 }
81 }
82 ComboBox {
83 id: updateRRCombo
84 Layout.fillWidth: true
85 enabled: update.checked
86 textRole: "display"
87 model: ReviewsListModel {
88 id: reviewsList
89 server: root.server
90 repository: root.repository
91 username: root.username
92 status: "pending"
93 }
94 onCurrentIndexChanged: {
95 root.refreshUpdateRR();
96 }
97 }
98
99 Item {
100 Layout.fillHeight: true
101 Layout.fillWidth: true
102 }
103}
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Tue Mar 26 2024 11:14:05 by doxygen 1.10.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.