我怎样才能 return 这个 Qt/QML plasmoid 中自定义格式的日期?

How can I return the date in a custom format in this Qt/QML plasmoid?

KDE Plasma 5.4.0 中的数字时钟不允许您指定自定义格式。我试图破解 plasmoid,它只是一个 QML 文件。然而,我一直没有成功。有一个条件分支,它允许您从以下字符串之一 select。

return Qt.SystemLocaleLongDate;
return Qt.ISODate;
return Qt.SystemLocaleShortDate;

我试图将其修改为以下内容,但它不起作用。大概我只是语法错误。

return QDate::currentDate().toString("dd.MM.yyyy");

如何修改 plasmoid 以显示自定义日期格式?

编辑

我怀疑我可能换错了行。我试图破解的 plasmoid 的源代码是 here。文件解压后,具体在applets/digital-clock/package/。 (安装后,此目录移动到 /usr/share/plasma/plasmoids/org.kde.plasma.digitalclock/。)我尝试更改 contents/ui/DigitalClock.qml.

的第 43 行

我尝试将行更改为 return "foo";,但这没有效果。同样,我不确定我的语法是否正确。

如评论中所述,返回此值的行不是对日期本身的引用,而只是指定格式。我不确定这里破解代码的语法,但是您可以稍后更改引用此 属性 的代码。

--- DigitalClock.qml.orig   2015-08-22 20:45:40.000000000 +1000
+++ DigitalClock.qml    2015-09-01 09:32:35.417197582 +1000
@@ -515,7 +515,7 @@

         if (main.showDate) {
             if (main.tooSmall) {
-                dateLabelLeft.text = Qt.formatDate(main.currentTime, main.dateFormat);
+                dateLabelLeft.text = Qt.formatDate(main.currentTime, "dd.MM.yyyy");
             } else {
                 dateLabel.text = Qt.formatDate(main.currentTime, main.dateFormat);
             }