Przeglądaj źródła

Use Kirigami for some spacings

Malte Veerman 7 lat temu
rodzic
commit
6da6c6e076

+ 10 - 8
CMakeLists.txt

@@ -35,20 +35,22 @@ cmake_policy(SET CMP0063 NEW)
 find_package(ECM REQUIRED)
 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_package(Qt5Core REQUIRED)
-
+find_package(Qt5 COMPONENTS Quick)
+set_package_properties(Qt5Quick PROPERTIES TYPE RUNTIME PURPOSE "Needed by the QML parts")
 
 #Find KF5
 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)
     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
 * 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:
 `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.Controls 1.2
 import QtQuick.Layouts 1.1
+import org.kde.kirigami 2.4 as Kirigami
 import Fancontrol.Qml 1.0 as Fancontrol
 
 
@@ -28,7 +29,7 @@ ColumnLayout {
     property QtObject loader: Fancontrol.Base.loader
 
     anchors.fill: parent
-    anchors.margins: 10
+    anchors.margins: Kirigami.Units.smallSpacing
 
     Label {
         Layout.alignment: Qt.AlignTop
@@ -40,12 +41,12 @@ ColumnLayout {
         Layout.fillWidth: true
         color: palette.light
         border.width: 1
-        radius: 5
+        radius: Kirigami.Units.smallSpacing
 
         ScrollView {
             id: scrollView
             anchors.fill: parent
-            anchors.margins: 5
+            anchors.margins: Kirigami.Units.smallSpacing
 
             TextEdit {
                 text: !!loader ? loader.config : ""

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

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

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

@@ -21,6 +21,7 @@
 import QtQuick 2.4
 import QtQuick.Controls 1.2
 import QtQuick.Layouts 1.1
+import org.kde.kirigami 2.4 as Kirigami
 import Fancontrol.Qml 1.0 as Fancontrol
 
 
@@ -31,7 +32,7 @@ RowLayout {
     property QtObject loader: Fancontrol.Base.loader
 
     anchors.fill: parent
-    anchors.margins: 10
+    anchors.margins: Kirigami.Units.smallSpacing
 
     Repeater {
         model: loader.hwmons.length
@@ -45,12 +46,13 @@ RowLayout {
             color: palette.light
             border.width: 1
             border.color: "black"
-            radius: 5
+            radius: Kirigami.Units.smallSpacing
             clip: true
 
             Column {
                 id: column
                 anchors.fill: parent
+                anchors.margins: Kirigami.Units.smallSpacing
 
                 Label {
                     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.Controls 1.2
 import QtQuick.Dialogs 1.2
+import org.kde.kirigami 2.4 as Kirigami
 import Fancontrol.Qml 1.0 as Fancontrol
 
 
 Item {
     property QtObject systemdCom: Fancontrol.Base.hasSystemdCommunicator() ? Fancontrol.Base.systemdCom : null
     property QtObject loader: Fancontrol.Base.loader
-    property int padding: 10
+    property int padding: Kirigami.Units.smallSpacing
     property real textWidth: 0
     property var locale: Qt.locale()
 
     id: root
     anchors.fill: parent
-    anchors.margins: 10
+    anchors.margins: Kirigami.Units.smallSpacing
 
     Column {
         id: column
         anchors.fill: parent
         anchors.margins: padding
-        spacing: 5
+        spacing: Kirigami.Units.smallSpacing
 
         RowLayout {
             width: parent.width

+ 3 - 2
import/qml/ErrorDialog.qml

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

+ 4 - 3
import/qml/FanItem.qml

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

+ 4 - 3
import/qml/OptionInput.qml

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

+ 2 - 1
import/qml/PwmPoint.qml

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

+ 2 - 1
import/qml/StatusPoint.qml

@@ -20,6 +20,7 @@
 
 import QtQuick 2.4
 import QtQuick.Controls 1.2
+import org.kde.kirigami 2.4 as Kirigami
 import Fancontrol.Qml 1.0 as Fancontrol
 import "units.js" as Units
 import "math.js" as MoreMath
@@ -36,7 +37,7 @@ Rectangle {
     readonly property real centerX: x + width / 2
     readonly property real centerY: y + height / 2
     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
 
     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.Layouts 1.2
 import QtQuick.Dialogs 1.2
+import org.kde.kirigami 2.4 as Kirigami
 import org.kde.kcm 1.0
 import Fancontrol.Qml 1.0 as Fancontrol
 
@@ -61,7 +62,7 @@ Item {
 
         width: parent.width
         anchors.verticalCenter: parent.verticalCenter
-        spacing: 20
+        spacing: Kirigami.Units.smallSpacing * 2
         visible: pwmFans.length === 0
 
         Label {