Warning, /plasma/kdeplasma-addons/plasmacalendarplugins/alternatecalendar/config/qml/AlternateCalendarConfig.qml is written in an unsupported language. File is not indexed.
0001 /* 0002 SPDX-FileCopyrightText: 2018 Friedrich W. H. Kossebau <kossebau@kde.org> 0003 SPDX-FileCopyrightText: 2022 Fushan Wen <qydwhotmail@gmail.com> 0004 0005 SPDX-License-Identifier: GPL-2.0-or-later 0006 */ 0007 0008 import QtQuick 2.15 0009 import QtQuick.Controls 2.15 as QQC2 0010 0011 import org.kde.kcmutils as KCM 0012 import org.kde.kirigami 2.20 as Kirigami 0013 0014 import org.kde.plasmacalendar.alternatecalendarconfig 1.0 0015 0016 KCM.SimpleKCM { 0017 id: configPage 0018 0019 // expected API 0020 signal configurationChanged 0021 0022 // expected API 0023 function saveConfig() { 0024 configStorage.calendarSystem = calendarSystemComboBox.currentValue; 0025 configStorage.dateOffset = dateOffsetSpinBoxLoader.active && dateOffsetSpinBoxLoader.item.value || 0; 0026 0027 configStorage.save(); 0028 } 0029 0030 Kirigami.FormLayout { 0031 0032 ConfigStorage { 0033 id: configStorage 0034 } 0035 0036 Row { 0037 Kirigami.FormData.label: i18ndc("plasma_calendar_alternatecalendar", "@label:listbox", "Calendar system:") 0038 0039 QQC2.ComboBox { 0040 id: calendarSystemComboBox 0041 model: configStorage.calendarSystemModel 0042 textRole: "display" 0043 valueRole: "id" 0044 currentIndex: configStorage.currentIndex 0045 onActivated: configPage.configurationChanged(); 0046 } 0047 0048 KCM.ContextualHelpButton { 0049 anchors.verticalCenter: calendarSystemComboBox.verticalCenter 0050 visible: calendarSystemComboBox.currentValue === "Islamic" 0051 toolTipText: i18ndc("plasma_calendar_alternatecalendar", "@info:tooltip", "This calendar is based on pure astronomical calculation. It doesn't consider any crescent visibility criteria.") 0052 } 0053 } 0054 0055 Loader { 0056 id: dateOffsetSpinBoxLoader 0057 active: calendarSystemComboBox.currentValue.startsWith("Islamic") 0058 visible: active 0059 Kirigami.FormData.label: i18ndc("plasma_calendar_alternatecalendar", "@label:spinbox", "Date offset:") 0060 0061 sourceComponent: QQC2.SpinBox { 0062 hoverEnabled: true 0063 0064 stepSize: 1 0065 from: -10 0066 to: 10 0067 value: configStorage.dateOffset 0068 onValueChanged: configPage.configurationChanged() 0069 0070 textFromValue: (value, locale) => i18ndp("plasma_calendar_alternatecalendar","%1 day", "%1 days", value) 0071 valueFromText: (text, locale) => parseInt(text) 0072 0073 QQC2.ToolTip.text: i18ndc("plasma_calendar_alternatecalendar", "@info:tooltip", "A positive offset signifies a later date, while a negative offset signifies an earlier date.") 0074 QQC2.ToolTip.visible: hovered 0075 QQC2.ToolTip.delay: Kirigami.Units.toolTipDelay 0076 } 0077 } 0078 } 0079 }