mirror of
https://github.com/noctalia-dev/noctalia-shell.git
synced 2026-05-11 17:08:27 +08:00
DesktopClockSettings: add option to display month as text
This commit is contained in:
@@ -1341,10 +1341,18 @@
|
||||
"description": "Das Erscheinungsbild des Uhr-Widgets konfigurieren.",
|
||||
"label": "Uhr-Widget"
|
||||
},
|
||||
"minimal-mode": {
|
||||
"description": "Verwende eine minimale Uhr-Anzeige mit Zeit und Datum.",
|
||||
"label": "Minimaler Modus"
|
||||
},
|
||||
"show-background": {
|
||||
"description": "Zeige den Hintergrundcontainer für das Uhr-Widget an.",
|
||||
"label": "Hintergrund anzeigen"
|
||||
},
|
||||
"show-month-name": {
|
||||
"description": "Zeige den Monatsnamen im Datum an. Wenn deaktiviert, wird die Monatsnummer angezeigt.",
|
||||
"label": "Monatsnamen anzeigen"
|
||||
},
|
||||
"style": {
|
||||
"analog": "Analog",
|
||||
"description": "Wähle den Anzeigestil der Uhr.",
|
||||
|
||||
@@ -1341,10 +1341,18 @@
|
||||
"description": "Configure the clock widget appearance.",
|
||||
"label": "Clock Widget"
|
||||
},
|
||||
"minimal-mode": {
|
||||
"description": "Use a minimal clock display with time and date.",
|
||||
"label": "Minimal mode"
|
||||
},
|
||||
"show-background": {
|
||||
"description": "Show the background container for the clock widget.",
|
||||
"label": "Show background"
|
||||
},
|
||||
"show-month-name": {
|
||||
"description": "Display the month name in the date. When disabled, shows the month number.",
|
||||
"label": "Show month name"
|
||||
},
|
||||
"style": {
|
||||
"analog": "Analog",
|
||||
"description": "Choose the clock display style.",
|
||||
|
||||
@@ -1341,10 +1341,18 @@
|
||||
"description": "Configurar la apariencia del widget de reloj.",
|
||||
"label": "Widget de reloj"
|
||||
},
|
||||
"minimal-mode": {
|
||||
"description": "Usar una visualización de reloj minimalista con hora y fecha.",
|
||||
"label": "Modo minimalista"
|
||||
},
|
||||
"show-background": {
|
||||
"description": "Mostrar el contenedor de fondo para el widget de reloj.",
|
||||
"label": "Mostrar fondo"
|
||||
},
|
||||
"show-month-name": {
|
||||
"description": "Mostrar el nombre del mes en la fecha. Cuando está desactivado, muestra el número del mes.",
|
||||
"label": "Mostrar nombre del mes"
|
||||
},
|
||||
"style": {
|
||||
"analog": "Analógico",
|
||||
"description": "Elige el estilo de visualización del reloj.",
|
||||
|
||||
@@ -1341,10 +1341,18 @@
|
||||
"description": "Configurer l'apparence du widget horloge.",
|
||||
"label": "Widget d'horloge"
|
||||
},
|
||||
"minimal-mode": {
|
||||
"description": "Utiliser un affichage d'horloge minimaliste avec l'heure et la date.",
|
||||
"label": "Mode minimaliste"
|
||||
},
|
||||
"show-background": {
|
||||
"description": "Afficher le conteneur d'arrière-plan pour le widget d'horloge.",
|
||||
"label": "Afficher l'arrière-plan"
|
||||
},
|
||||
"show-month-name": {
|
||||
"description": "Afficher le nom du mois dans la date. Lorsqu'il est désactivé, affiche le numéro du mois.",
|
||||
"label": "Afficher le nom du mois"
|
||||
},
|
||||
"style": {
|
||||
"analog": "Analogique",
|
||||
"description": "Choisissez le style d'affichage de l'horloge.",
|
||||
|
||||
@@ -1341,10 +1341,18 @@
|
||||
"description": "時計ウィジェットの外観を設定します。",
|
||||
"label": "時計ウィジェット"
|
||||
},
|
||||
"minimal-mode": {
|
||||
"description": "時刻と日付を含むミニマルな時計表示を使用します。",
|
||||
"label": "ミニマルモード"
|
||||
},
|
||||
"show-background": {
|
||||
"description": "時計ウィジェットの背景コンテナを表示する。",
|
||||
"label": "背景を表示"
|
||||
},
|
||||
"show-month-name": {
|
||||
"description": "日付に月名を表示します。無効にすると、月番号が表示されます。",
|
||||
"label": "月名を表示"
|
||||
},
|
||||
"style": {
|
||||
"analog": "アナログ",
|
||||
"description": "時計の表示スタイルを選択してください。",
|
||||
|
||||
@@ -1341,10 +1341,18 @@
|
||||
"description": "Configureer de weergave van de klokwidget.",
|
||||
"label": "Klokwidget"
|
||||
},
|
||||
"minimal-mode": {
|
||||
"description": "Gebruik een minimale klokweergave met tijd en datum.",
|
||||
"label": "Minimale modus"
|
||||
},
|
||||
"show-background": {
|
||||
"description": "Toon de achtergrondcontainer voor de klokwidget.",
|
||||
"label": "Achtergrond weergeven"
|
||||
},
|
||||
"show-month-name": {
|
||||
"description": "Toon de maandnaam in de datum. Wanneer uitgeschakeld, wordt het maandnummer weergegeven.",
|
||||
"label": "Maandnaam weergeven"
|
||||
},
|
||||
"style": {
|
||||
"analog": "Analoog",
|
||||
"description": "Kies de weergavestijl van de klok.",
|
||||
|
||||
@@ -1341,10 +1341,18 @@
|
||||
"description": "Configurar a aparência do widget de relógio.",
|
||||
"label": "Widget de Relógio"
|
||||
},
|
||||
"minimal-mode": {
|
||||
"description": "Usar uma exibição de relógio minimalista com hora e data.",
|
||||
"label": "Modo minimalista"
|
||||
},
|
||||
"show-background": {
|
||||
"description": "Mostrar o contêiner de fundo para o widget de relógio.",
|
||||
"label": "Mostrar plano de fundo"
|
||||
},
|
||||
"show-month-name": {
|
||||
"description": "Exibir o nome do mês na data. Quando desativado, mostra o número do mês.",
|
||||
"label": "Mostrar nome do mês"
|
||||
},
|
||||
"style": {
|
||||
"analog": "Analógico",
|
||||
"description": "Escolha o estilo de exibição do relógio.",
|
||||
|
||||
@@ -1341,10 +1341,18 @@
|
||||
"description": "Настроить внешний вид виджета часов.",
|
||||
"label": "Виджет часов"
|
||||
},
|
||||
"minimal-mode": {
|
||||
"description": "Использовать минимальное отображение часов с временем и датой.",
|
||||
"label": "Минимальный режим"
|
||||
},
|
||||
"show-background": {
|
||||
"description": "Показать фоновый контейнер для виджета часов.",
|
||||
"label": "Показать фон"
|
||||
},
|
||||
"show-month-name": {
|
||||
"description": "Отображать название месяца в дате. При отключении отображается номер месяца.",
|
||||
"label": "Показать название месяца"
|
||||
},
|
||||
"style": {
|
||||
"analog": "Аналоговый",
|
||||
"description": "Выберите стиль отображения часов.",
|
||||
|
||||
@@ -1341,10 +1341,18 @@
|
||||
"description": "Saat aracı görünümünü yapılandırın.",
|
||||
"label": "Saat Widget'ı"
|
||||
},
|
||||
"minimal-mode": {
|
||||
"description": "Zaman ve tarih içeren minimal bir saat görüntüsü kullanın.",
|
||||
"label": "Minimal mod"
|
||||
},
|
||||
"show-background": {
|
||||
"description": "Saat widget'ı için arka plan kabını göster.",
|
||||
"label": "Arka planı göster"
|
||||
},
|
||||
"show-month-name": {
|
||||
"description": "Tarihte ay adını göster. Devre dışı bırakıldığında, ay numarasını gösterir.",
|
||||
"label": "Ay adını göster"
|
||||
},
|
||||
"style": {
|
||||
"analog": "Analog",
|
||||
"description": "Saat görüntüleme stilini seçin.",
|
||||
|
||||
@@ -1341,10 +1341,18 @@
|
||||
"description": "Налаштуйте вигляд віджета годинника.",
|
||||
"label": "Віджет годинника"
|
||||
},
|
||||
"minimal-mode": {
|
||||
"description": "Використовувати мінімальне відображення годинника з часом і датою.",
|
||||
"label": "Мінімальний режим"
|
||||
},
|
||||
"show-background": {
|
||||
"description": "Показати фоновий контейнер для віджета годинника.",
|
||||
"label": "Показати фон"
|
||||
},
|
||||
"show-month-name": {
|
||||
"description": "Відображати назву місяця в даті. Коли вимкнено, відображається номер місяця.",
|
||||
"label": "Показати назву місяця"
|
||||
},
|
||||
"style": {
|
||||
"analog": "Аналоговий",
|
||||
"description": "Виберіть стиль відображення годинника.",
|
||||
|
||||
@@ -1341,10 +1341,18 @@
|
||||
"description": "配置时钟小部件外观。",
|
||||
"label": "时钟小部件"
|
||||
},
|
||||
"minimal-mode": {
|
||||
"description": "使用包含时间和日期的简约时钟显示。",
|
||||
"label": "简约模式"
|
||||
},
|
||||
"show-background": {
|
||||
"description": "显示时钟小部件的背景容器。",
|
||||
"label": "显示背景"
|
||||
},
|
||||
"show-month-name": {
|
||||
"description": "在日期中显示月份名称。禁用时,显示月份数字。",
|
||||
"label": "显示月份名称"
|
||||
},
|
||||
"style": {
|
||||
"analog": "模拟",
|
||||
"description": "选择时钟显示样式。",
|
||||
|
||||
@@ -22,6 +22,7 @@ DraggableDesktopWidget {
|
||||
property bool showSeconds: (widgetData && widgetData.showSeconds !== undefined) ? widgetData.showSeconds : true
|
||||
property bool showDate: (widgetData && widgetData.showDate !== undefined) ? widgetData.showDate : true
|
||||
property string clockStyle: (widgetData && widgetData.clockStyle) ? widgetData.clockStyle : "digital"
|
||||
property bool showMonthName: (widgetData && widgetData.showMonthName !== undefined) ? widgetData.showMonthName : true
|
||||
|
||||
readonly property real contentPadding: clockStyle === "minimal" ? Style.marginL : Style.marginXL
|
||||
implicitWidth: contentLoader.item ? (contentLoader.item.implicitWidth || contentLoader.item.width || 0) + contentPadding * 2 : 0
|
||||
@@ -64,7 +65,17 @@ DraggableDesktopWidget {
|
||||
}
|
||||
|
||||
NText {
|
||||
text: Qt.formatDate(root.now, Qt.DefaultLocaleLongDate)
|
||||
text: {
|
||||
if (root.showMonthName) {
|
||||
return I18n.locale.toString(root.now, "d MMMM yyyy");
|
||||
} else {
|
||||
// Format with month number: "17 12 2025"
|
||||
var day = root.now.getDate();
|
||||
var month = root.now.getMonth() + 1; // getMonth() is 0-based
|
||||
var year = root.now.getFullYear();
|
||||
return I18n.locale.toString(root.now, "d") + " " + month.toString() + " " + year.toString();
|
||||
}
|
||||
}
|
||||
pointSize: Style.fontSizeM
|
||||
font.weight: Style.fontWeightMedium
|
||||
color: clockTextColor
|
||||
|
||||
@@ -12,17 +12,44 @@ ColumnLayout {
|
||||
property var widgetMetadata: null
|
||||
|
||||
property bool valueShowBackground: widgetData.showBackground !== undefined ? widgetData.showBackground : (widgetMetadata ? widgetMetadata.showBackground : true)
|
||||
property string valueClockStyle: widgetData.clockStyle !== undefined ? widgetData.clockStyle : "digital"
|
||||
property string valueClockStyle: {
|
||||
// If clockStyle is "minimal", default to "digital" for the combo box
|
||||
var style = widgetData.clockStyle !== undefined ? widgetData.clockStyle : "digital";
|
||||
return style === "minimal" ? "digital" : style;
|
||||
}
|
||||
property bool valueMinimalMode: {
|
||||
// Check if minimalMode is set, or if clockStyle is "minimal"
|
||||
if (widgetData.minimalMode !== undefined) {
|
||||
return widgetData.minimalMode;
|
||||
}
|
||||
return widgetData.clockStyle === "minimal";
|
||||
}
|
||||
property bool valueShowMonthName: widgetData.showMonthName !== undefined ? widgetData.showMonthName : true
|
||||
|
||||
function saveSettings() {
|
||||
var settings = Object.assign({}, widgetData || {});
|
||||
settings.showBackground = valueShowBackground;
|
||||
settings.clockStyle = valueClockStyle;
|
||||
if (valueMinimalMode) {
|
||||
settings.clockStyle = "minimal";
|
||||
} else {
|
||||
settings.clockStyle = valueClockStyle;
|
||||
}
|
||||
settings.minimalMode = valueMinimalMode;
|
||||
settings.showMonthName = valueShowMonthName;
|
||||
return settings;
|
||||
}
|
||||
|
||||
NToggle {
|
||||
Layout.fillWidth: true
|
||||
label: I18n.tr("settings.desktop-widgets.clock.minimal-mode.label")
|
||||
description: I18n.tr("settings.desktop-widgets.clock.minimal-mode.description")
|
||||
checked: valueMinimalMode
|
||||
onToggled: checked => valueMinimalMode = checked
|
||||
}
|
||||
|
||||
NComboBox {
|
||||
Layout.fillWidth: true
|
||||
visible: !valueMinimalMode
|
||||
label: I18n.tr("settings.desktop-widgets.clock.style.label")
|
||||
description: I18n.tr("settings.desktop-widgets.clock.style.description")
|
||||
currentKey: valueClockStyle
|
||||
@@ -35,15 +62,20 @@ ColumnLayout {
|
||||
{
|
||||
"key": "analog",
|
||||
"name": I18n.tr("settings.desktop-widgets.clock.style.analog")
|
||||
},
|
||||
{
|
||||
"key": "minimal",
|
||||
"name": I18n.tr("settings.desktop-widgets.clock.style.minimal")
|
||||
}
|
||||
]
|
||||
onSelected: key => valueClockStyle = key
|
||||
}
|
||||
|
||||
NToggle {
|
||||
Layout.fillWidth: true
|
||||
visible: valueMinimalMode
|
||||
label: I18n.tr("settings.desktop-widgets.clock.show-month-name.label")
|
||||
description: I18n.tr("settings.desktop-widgets.clock.show-month-name.description")
|
||||
checked: valueShowMonthName
|
||||
onToggled: checked => valueShowMonthName = checked
|
||||
}
|
||||
|
||||
NToggle {
|
||||
Layout.fillWidth: true
|
||||
label: I18n.tr("settings.desktop-widgets.clock.show-background.label")
|
||||
|
||||
@@ -143,6 +143,8 @@ Singleton {
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
${expandedPath}' ${tmpDir}/extension/themes/NoctaliaTheme-color-theme.json && cd ${tmpDir} && zip -q -r ${modifiedVsix} . && ${client.name} --install-extension ${modifiedVsix} 2>&1 && rm -rf ${tmpDir}; fi`;
|
||||
var updateSettingsJson = `if command -v ${client.name} >/dev/null 2>&1 && [ -f ${settingsPath} ]; then sed -i 's/\\\\\\"workbench.colorTheme\\\\\\":[[:space:]]*\\\\\\"[^\\\\\\"]*/\\\\\\"workbench.colorTheme\\\\\\": \\\\\\"NoctaliaTheme/' ${settingsPath}; fi`;
|
||||
lines.push(`post_hook = "sh -c \\"${reinstallVsix}; ${updateSettingsJson}\\""`);
|
||||
|
||||
Reference in New Issue
Block a user