2
0
Эх сурвалжийг харах

Use Kirigami for some spacings

Malte Veerman 7 жил өмнө
parent
commit
6da6c6e076

+ 10 - 8
CMakeLists.txt

@@ -35,20 +35,22 @@ cmake_policy(SET CMP0063 NEW)
 find_package(ECM REQUIRED)
 find_package(ECM REQUIRED)
 set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
 set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${ECM_KDE_MODULE_DIR})
 
 
+#includes
+include(KDEInstallDirs)
+include(KDECMakeSettings)
+include(KDECompilerSettings)
+include(FeatureSummary)
+include(FindPkgConfig)
 
 
 #Find Qt5
 #Find Qt5
 find_package(Qt5Core REQUIRED)
 find_package(Qt5Core REQUIRED)
-
+find_package(Qt5 COMPONENTS Quick)
+set_package_properties(Qt5Quick PROPERTIES TYPE RUNTIME PURPOSE "Needed by the QML parts")
 
 
 #Find KF5
 #Find KF5
 find_package(KF5 COMPONENTS I18n REQUIRED)
 find_package(KF5 COMPONENTS I18n REQUIRED)
-
-
-#includes
-include(KDEInstallDirs)
-include(KDECMakeSettings)
-include(KDECompilerSettings)
-include(FeatureSummary)
+find_package(KF5 COMPONENTS Kirigami2)
+set_package_properties(KF5Kirigami2 PROPERTIES TYPE RUNTIME PURPOSE "Needed by the QML parts")
 
 
 if(${KF5_VERSION} VERSION_GREATER_EQUAL 5.33.0)
 if(${KF5_VERSION} VERSION_GREATER_EQUAL 5.33.0)
     include(ECMGenerateQmlTypes)
     include(ECMGenerateQmlTypes)

+ 4 - 0
README.md

@@ -17,6 +17,10 @@ The KCM is only build, if the -DNO_SYSTEMD option is unset or set to false.
 * Qt5: Base/Core, Widgets, GUI, QML
 * Qt5: Base/Core, Widgets, GUI, QML
 * KF5: I18n, Auth, Config, Package, Declarative, CoreAddons, KCMUtils, Extra-Cmake-Modules
 * KF5: I18n, Auth, Config, Package, Declarative, CoreAddons, KCMUtils, Extra-Cmake-Modules
 
 
+# Additional requirements for running
+* Qt5: Quick
+* KF5: Kirigami2
+
 ## Debian/Ubuntu command to install the build requirements:
 ## Debian/Ubuntu command to install the build requirements:
 `sudo apt-get install libkf5config-dev libkf5auth-dev libkf5package-dev libkf5declarative-dev libkf5coreaddons-dev libkf5kcmutils-dev libkf5i18n-dev libqt5core5a libqt5widgets5 libqt5gui5 libqt5qml5 extra-cmake-modules qtbase5-dev`
 `sudo apt-get install libkf5config-dev libkf5auth-dev libkf5package-dev libkf5declarative-dev libkf5coreaddons-dev libkf5kcmutils-dev libkf5i18n-dev libqt5core5a libqt5widgets5 libqt5gui5 libqt5qml5 extra-cmake-modules qtbase5-dev`
 
 

+ 4 - 3
fancontrol-gui/package/contents/ui/ConfigfileTab.qml

@@ -21,6 +21,7 @@
 import QtQuick 2.4
 import QtQuick 2.4
 import QtQuick.Controls 1.2
 import QtQuick.Controls 1.2
 import QtQuick.Layouts 1.1
 import QtQuick.Layouts 1.1
+import org.kde.kirigami 2.4 as Kirigami
 import Fancontrol.Qml 1.0 as Fancontrol
 import Fancontrol.Qml 1.0 as Fancontrol
 
 
 
 
@@ -28,7 +29,7 @@ ColumnLayout {
     property QtObject loader: Fancontrol.Base.loader
     property QtObject loader: Fancontrol.Base.loader
 
 
     anchors.fill: parent
     anchors.fill: parent
-    anchors.margins: 10
+    anchors.margins: Kirigami.Units.smallSpacing
 
 
     Label {
     Label {
         Layout.alignment: Qt.AlignTop
         Layout.alignment: Qt.AlignTop
@@ -40,12 +41,12 @@ ColumnLayout {
         Layout.fillWidth: true
         Layout.fillWidth: true
         color: palette.light
         color: palette.light
         border.width: 1
         border.width: 1
-        radius: 5
+        radius: Kirigami.Units.smallSpacing
 
 
         ScrollView {
         ScrollView {
             id: scrollView
             id: scrollView
             anchors.fill: parent
             anchors.fill: parent
-            anchors.margins: 5
+            anchors.margins: Kirigami.Units.smallSpacing
 
 
             TextEdit {
             TextEdit {
                 text: !!loader ? loader.config : ""
                 text: !!loader ? loader.config : ""

+ 3 - 2
fancontrol-gui/package/contents/ui/PwmFansTab.qml

@@ -21,6 +21,7 @@
 import QtQuick 2.4
 import QtQuick 2.4
 import QtQuick.Controls 1.4
 import QtQuick.Controls 1.4
 import QtQuick.Layouts 1.2
 import QtQuick.Layouts 1.2
+import org.kde.kirigami 2.4 as Kirigami
 import Fancontrol.Qml 1.0 as Fancontrol
 import Fancontrol.Qml 1.0 as Fancontrol
 
 
 
 
@@ -33,7 +34,7 @@ Item {
 
 
     id: root
     id: root
     anchors.fill: parent
     anchors.fill: parent
-    anchors.margins: 10
+    anchors.margins: Kirigami.Units.smallSpacing
 
 
     RowLayout {
     RowLayout {
         id: fanRow
         id: fanRow
@@ -78,7 +79,7 @@ Item {
     ColumnLayout {
     ColumnLayout {
         id: noFansInfo
         id: noFansInfo
         anchors.centerIn: parent
         anchors.centerIn: parent
-        spacing: 20
+        spacing: Kirigami.Units.smallSpacing * 2
         visible: pwmFans.length === 0
         visible: pwmFans.length === 0
 
 
         Label {
         Label {

+ 4 - 2
fancontrol-gui/package/contents/ui/SensorsTab.qml

@@ -21,6 +21,7 @@
 import QtQuick 2.4
 import QtQuick 2.4
 import QtQuick.Controls 1.2
 import QtQuick.Controls 1.2
 import QtQuick.Layouts 1.1
 import QtQuick.Layouts 1.1
+import org.kde.kirigami 2.4 as Kirigami
 import Fancontrol.Qml 1.0 as Fancontrol
 import Fancontrol.Qml 1.0 as Fancontrol
 
 
 
 
@@ -31,7 +32,7 @@ RowLayout {
     property QtObject loader: Fancontrol.Base.loader
     property QtObject loader: Fancontrol.Base.loader
 
 
     anchors.fill: parent
     anchors.fill: parent
-    anchors.margins: 10
+    anchors.margins: Kirigami.Units.smallSpacing
 
 
     Repeater {
     Repeater {
         model: loader.hwmons.length
         model: loader.hwmons.length
@@ -45,12 +46,13 @@ RowLayout {
             color: palette.light
             color: palette.light
             border.width: 1
             border.width: 1
             border.color: "black"
             border.color: "black"
-            radius: 5
+            radius: Kirigami.Units.smallSpacing
             clip: true
             clip: true
 
 
             Column {
             Column {
                 id: column
                 id: column
                 anchors.fill: parent
                 anchors.fill: parent
+                anchors.margins: Kirigami.Units.smallSpacing
 
 
                 Label {
                 Label {
                     anchors.horizontalCenter: parent.horizontalCenter
                     anchors.horizontalCenter: parent.horizontalCenter

+ 4 - 3
fancontrol-gui/package/contents/ui/SettingsTab.qml

@@ -22,25 +22,26 @@ import QtQuick 2.4
 import QtQuick.Layouts 1.1
 import QtQuick.Layouts 1.1
 import QtQuick.Controls 1.2
 import QtQuick.Controls 1.2
 import QtQuick.Dialogs 1.2
 import QtQuick.Dialogs 1.2
+import org.kde.kirigami 2.4 as Kirigami
 import Fancontrol.Qml 1.0 as Fancontrol
 import Fancontrol.Qml 1.0 as Fancontrol
 
 
 
 
 Item {
 Item {
     property QtObject systemdCom: Fancontrol.Base.hasSystemdCommunicator() ? Fancontrol.Base.systemdCom : null
     property QtObject systemdCom: Fancontrol.Base.hasSystemdCommunicator() ? Fancontrol.Base.systemdCom : null
     property QtObject loader: Fancontrol.Base.loader
     property QtObject loader: Fancontrol.Base.loader
-    property int padding: 10
+    property int padding: Kirigami.Units.smallSpacing
     property real textWidth: 0
     property real textWidth: 0
     property var locale: Qt.locale()
     property var locale: Qt.locale()
 
 
     id: root
     id: root
     anchors.fill: parent
     anchors.fill: parent
-    anchors.margins: 10
+    anchors.margins: Kirigami.Units.smallSpacing
 
 
     Column {
     Column {
         id: column
         id: column
         anchors.fill: parent
         anchors.fill: parent
         anchors.margins: padding
         anchors.margins: padding
-        spacing: 5
+        spacing: Kirigami.Units.smallSpacing
 
 
         RowLayout {
         RowLayout {
             width: parent.width
             width: parent.width

+ 3 - 2
import/qml/ErrorDialog.qml

@@ -21,6 +21,7 @@
 import QtQuick 2.4
 import QtQuick 2.4
 import QtQuick.Dialogs 1.2
 import QtQuick.Dialogs 1.2
 import QtQuick.Controls 1.2
 import QtQuick.Controls 1.2
+import org.kde.kirigami 2.4 as Kirigami
 import Fancontrol.Qml 1.0 as Fancontrol
 import Fancontrol.Qml 1.0 as Fancontrol
 
 
 
 
@@ -28,7 +29,7 @@ Dialog {
     id: dialog
     id: dialog
 
 
     title: i18n("Error")
     title: i18n("Error")
-    width: text.implicitWidth + 20
+    width: text.implicitWidth + Kirigami.Units.smallSpacing * 2
     standardButtons: StandardButton.Close
     standardButtons: StandardButton.Close
     onRejected: close()
     onRejected: close()
 
 
@@ -37,7 +38,7 @@ Dialog {
         anchors.centerIn: parent
         anchors.centerIn: parent
         text: ""
         text: ""
     }
     }
-    
+
     Connections {
     Connections {
         target: Fancontrol.Base
         target: Fancontrol.Base
         onCriticalError: {
         onCriticalError: {

+ 4 - 3
import/qml/FanItem.qml

@@ -21,6 +21,7 @@
 import QtQuick 2.4
 import QtQuick 2.4
 import QtQuick.Controls 1.4
 import QtQuick.Controls 1.4
 import QtQuick.Layouts 1.1
 import QtQuick.Layouts 1.1
+import org.kde.kirigami 2.4 as Kirigami
 import Fancontrol.Qml 1.0 as Fancontrol
 import Fancontrol.Qml 1.0 as Fancontrol
 import "math.js" as MoreMath
 import "math.js" as MoreMath
 import "units.js" as Units
 import "units.js" as Units
@@ -33,7 +34,7 @@ Rectangle {
     property QtObject tempModel
     property QtObject tempModel
     property real minTemp: Fancontrol.Base.minTemp
     property real minTemp: Fancontrol.Base.minTemp
     property real maxTemp: Fancontrol.Base.maxTemp
     property real maxTemp: Fancontrol.Base.maxTemp
-    property int margin: 5
+    property int margin: Kirigami.Units.smallSpacing
     property string unit: Fancontrol.Base.unit
     property string unit: Fancontrol.Base.unit
     property real convertedMinTemp: Units.fromCelsius(minTemp, unit)
     property real convertedMinTemp: Units.fromCelsius(minTemp, unit)
     property real convertedMaxTemp: Units.fromCelsius(maxTemp, unit)
     property real convertedMaxTemp: Units.fromCelsius(maxTemp, unit)
@@ -42,7 +43,7 @@ Rectangle {
     color: "transparent"
     color: "transparent"
     border.color: palette.windowText
     border.color: palette.windowText
     border.width: 2
     border.width: 2
-    radius: 10
+    radius: Kirigami.Units.smallSpacing
     clip: false
     clip: false
 
 
     onMinTempChanged: if (!!fan) meshCanvas.requestPaint()
     onMinTempChanged: if (!!fan) meshCanvas.requestPaint()
@@ -69,7 +70,7 @@ Rectangle {
             top: parent.top
             top: parent.top
             topMargin: margin
             topMargin: margin
         }
         }
-        visible: root.height >= height + margin*2
+        visible: root.height >= height + margin * 2
         text: !!fan ? fan.name : ""
         text: !!fan ? fan.name : ""
         color: palette.text
         color: palette.text
         horizontalAlignment: TextEdit.AlignLeft
         horizontalAlignment: TextEdit.AlignLeft

+ 4 - 3
import/qml/OptionInput.qml

@@ -20,6 +20,7 @@
 
 
 import QtQuick 2.4
 import QtQuick 2.4
 import QtQuick.Layouts 1.1
 import QtQuick.Layouts 1.1
+import org.kde.kirigami 2.4 as Kirigami
 
 
 
 
 FocusScope {
 FocusScope {
@@ -28,13 +29,13 @@ FocusScope {
     property alias inputMethodHints: textField.inputMethodHints
     property alias inputMethodHints: textField.inputMethodHints
     property alias validator: textField.validator
     property alias validator: textField.validator
     property alias color: textField.color
     property alias color: textField.color
-    property real margin: 6
+    property real margin: Kirigami.Units.smallSpacing
     property var value
     property var value
     property var locale: Qt.locale()
     property var locale: Qt.locale()
 
 
     id: root
     id: root
-    implicitHeight: textField.implicitHeight + margin*2
-    implicitWidth: textField.implicitWidth + margin*2
+    implicitHeight: textField.implicitHeight + margin * 2
+    implicitWidth: textField.implicitWidth + margin * 2
 
 
     onValueChanged: {
     onValueChanged: {
         if (textField.text != value) {
         if (textField.text != value) {

+ 2 - 1
import/qml/PwmPoint.qml

@@ -20,6 +20,7 @@
 
 
 import QtQuick 2.4
 import QtQuick 2.4
 import QtQuick.Controls 1.4
 import QtQuick.Controls 1.4
+import org.kde.kirigami 2.4 as Kirigami
 import Fancontrol.Qml 1.0 as Fancontrol
 import Fancontrol.Qml 1.0 as Fancontrol
 import "units.js" as Units
 import "units.js" as Units
 
 
@@ -34,7 +35,7 @@ Rectangle {
     property int temp: 0
     property int temp: 0
     property int pwm: 0
     property int pwm: 0
     property alias drag: pwmMouse.drag
     property alias drag: pwmMouse.drag
-    property int size: 10
+    property int size: Kirigami.Units.smallSpacing * 2
     property string unit: Fancontrol.Base.unit
     property string unit: Fancontrol.Base.unit
     property var locale: Qt.locale()
     property var locale: Qt.locale()
 
 

+ 2 - 1
import/qml/StatusPoint.qml

@@ -20,6 +20,7 @@
 
 
 import QtQuick 2.4
 import QtQuick 2.4
 import QtQuick.Controls 1.2
 import QtQuick.Controls 1.2
+import org.kde.kirigami 2.4 as Kirigami
 import Fancontrol.Qml 1.0 as Fancontrol
 import Fancontrol.Qml 1.0 as Fancontrol
 import "units.js" as Units
 import "units.js" as Units
 import "math.js" as MoreMath
 import "math.js" as MoreMath
@@ -36,7 +37,7 @@ Rectangle {
     readonly property real centerX: x + width / 2
     readonly property real centerX: x + width / 2
     readonly property real centerY: y + height / 2
     readonly property real centerY: y + height / 2
     readonly property point center: Qt.point(centerX, centerY)
     readonly property point center: Qt.point(centerX, centerY)
-    property int size: 10
+    property int size: Kirigami.Units.smallSpacing * 2
     property string unit: Fancontrol.Base.unit
     property string unit: Fancontrol.Base.unit
 
 
     width: size
     width: size

+ 2 - 1
kcm/package/contents/ui/KCM.qml

@@ -22,6 +22,7 @@ import QtQuick 2.4
 import QtQuick.Controls 1.3
 import QtQuick.Controls 1.3
 import QtQuick.Layouts 1.2
 import QtQuick.Layouts 1.2
 import QtQuick.Dialogs 1.2
 import QtQuick.Dialogs 1.2
+import org.kde.kirigami 2.4 as Kirigami
 import org.kde.kcm 1.0
 import org.kde.kcm 1.0
 import Fancontrol.Qml 1.0 as Fancontrol
 import Fancontrol.Qml 1.0 as Fancontrol
 
 
@@ -61,7 +62,7 @@ Item {
 
 
         width: parent.width
         width: parent.width
         anchors.verticalCenter: parent.verticalCenter
         anchors.verticalCenter: parent.verticalCenter
-        spacing: 20
+        spacing: Kirigami.Units.smallSpacing * 2
         visible: pwmFans.length === 0
         visible: pwmFans.length === 0
 
 
         Label {
         Label {