diff -Nru dde-calendar-5.7.0.4/assets/dde-calendar.desktop dde-calendar-5.7.0.23/assets/dde-calendar.desktop
--- dde-calendar-5.7.0.4/assets/dde-calendar.desktop 2020-07-10 09:08:38.000000000 +0000
+++ dde-calendar-5.7.0.23/assets/dde-calendar.desktop 2020-11-03 09:03:22.000000000 +0000
@@ -10,6 +10,7 @@
Type=Application
X-Deepin-Vendor=deepin
X-MultipleArgs=false
+X-Deepin-TurboType=dtkwidget
# Translations:
# Do not manually modify!
@@ -18,92 +19,118 @@
Comment[ast]=Calendariu ye una ferramienta de dates.
Comment[az]=Kalendar tarix alətidir
Comment[bg]=Календарът е приложение за показване на датата.
-Comment[bn]=কেলেণ্ডার একটি সময় টুল
+Comment[bn]=ক্যালেন্ডার একটি তারিখ টুল
+Comment[bo]=ལོ་ཐོ་ནི་ཚེས་གྲངས་ལྟ་བའི་ཡོ་བྱད་ཆུང་ཆུང་ཞིག་རེད།
Comment[ca]=El calendari és una eina de cites.
Comment[cs]=Kalendář je nástroj pro práci s daty.
Comment[da]=Kalender er et datoværktøj.
Comment[de]=Kalender ist ein Datumswerkzeug.
Comment[el]=Εφαρμογή Ημερολογίου
+Comment[en_AU]=Calendar is a date tool.
Comment[en_GB]=Calendar is a date tool
Comment[eo]=Kalendaro estas datilo.
-Comment[es]=Calendario es una herramienta de gestión de fechas.
-Comment[es_419]=Calendario es un almanaque.
+Comment[es]=Calendario de Deepin es una herramienta de gestión de eventos.
+Comment[et]=Kalender on kuupäeva tööriist.
Comment[fa]=تقویم یک ابزار تاریخ است.
-Comment[fi]=Kalenteri on päivämäärätyökalu.
+Comment[fi]=Kalenteri on ajankäytön apuohjelma.
Comment[fr]=Simple calendrier.
Comment[gl_ES]=O calendario é unha ferramenta de datas.
-Comment[hi_IN]=दिनदर्शिका दिनांक हेतु एक साधन है।
+Comment[hi_IN]=दिनदर्शिका तिथि हेतु एक साधन है।
Comment[hr]=Kalendar je alat za rad sa vremenom.
-Comment[hu]=Naptár alkalmazás
-Comment[id]=Kalender adalah sebuah peralatan tanggal.
-Comment[it]=Calendar è un tool calendario. Localizzazione italiana a cura di Carofano Massimo Antonio.
+Comment[hu]=A Naptár egy dátum megjelenítő eszköz.
+Comment[id]=Kalender adalah sebuah peralatan penanggalan.
+Comment[it]=Calendario è un tool calendario. Localizzazione italiana a cura di Carofano Massimo Antonio.
Comment[ja]=カレンダーは日時ツールです。
Comment[kn_IN]=ಕ್ಯಾಲೆಂಡರ್ ಒಂದು ದಿನದರ್ಶಕವಾಗಿದೆ.
-Comment[ko]=Calendar는 일정 관리도구입니다.
+Comment[ko]=달력은 날짜 도구입니다.
+Comment[ku]=Salname navgîneke tarîxê ye.
Comment[ku_IQ]=ساڵنامە ئامرازێکی بەروارە
Comment[lt]=Kalendorius yra datų įrankis.
+Comment[lv]=Kalendārs ir datumu rīks.
Comment[ml]=കലണ്ടർ ഒരു തീയതി ഉപകരണം ആണ്
+Comment[mn]=Хуанли нь огноо, цагалбарын хэрэгсэл.
Comment[ms]=Kalendar merupakan alat tarikh.
Comment[nb]=Kalander er et redskap for å organisere hendelser etter dato og klokkeslett.
Comment[ne]=क्यालेन्डर एक मिति उपकरण हो।
Comment[nl]=Kalender is een hulpmiddel voor het bijhouden van afspraken.
+Comment[pa]=ਕੈਲੰਡਰ ਤਾਰੀਖ ਸਾਧਨ ਹੈ।
Comment[pl]=Kalendarz to narzędzie zarządzania czasem.
-Comment[pt]=O Calendário é uma ferramenta de agendamento.
-Comment[pt_BR]=Calendário é uma ferramenta de data.
+Comment[pt]=O Calendário é uma ferramenta de data.
+Comment[pt_BR]=O Calendário é uma ferramenta que permite agendar e visualizar eventos.
Comment[ro]=Calendarul este un instrument pentru date
Comment[ru]=Календарь является приложением для планирования Вашего времени.
+Comment[si]=දින දසුන දින මෙවලමකි.
Comment[sk]=Kalendár je dátumový nástroj.
Comment[sl]=Koledar je orodje za urejanje datumov.
+Comment[sq]=Kalendari është një mjet datash.
Comment[sr]=Календар је алат за приказивање датума.
Comment[sv]=Kalender är ett datumverktyg.
+Comment[sw]=Kalenda ni chombo ya tarehe
Comment[ta]=அட்டவணை தேதி கருவியாகும்
Comment[tr]=Takvim, tarihi görüntüleyen bir araçtır.
Comment[ug]=كالىندار ئۇ ۋاقىت قۇرالى
Comment[uk]=Календар
Comment[vi]=Lịch là một công cụ ngày tháng.
-Comment[zh_CN]=日历是一款查看日期、管理日程的工具。
+Comment[zh_CN]=日历是一款查看日期的小工具。
+Comment[zh_HK]=日曆是一款查看日期的小工具。
Comment[zh_TW]=簡易日期顯示工具
GenericName[am_ET]=ቀን መቁጠሪያ
GenericName[ar]=التقويم
GenericName[ast]=Calendariu
GenericName[az]=Kalendar
GenericName[bg]=Календар
+GenericName[bn]=ক্যালেন্ডার
+GenericName[bo]=ལོ་ཐོ།
GenericName[ca]=Calendari
GenericName[cs]=Kalendář
GenericName[da]=Kalender
GenericName[de]=Kalender
GenericName[el]=Ημερολόγιο
+GenericName[en_AU]=Calendar
+GenericName[en_GB]=Calendar
GenericName[eo]=Kalendaro
GenericName[es]=Calendario
-GenericName[es_419]=Calendario
+GenericName[et]=Kalender
+GenericName[fa]=تقویم
+GenericName[fi]=Kalenteri
GenericName[fr]=Calendrier
GenericName[gl_ES]=Calendario
+GenericName[hi_IN]=दिनदर्शिका
GenericName[hr]=Kalendar
GenericName[hu]=Naptár
GenericName[id]=Kalender
-GenericName[it]=Calendar
+GenericName[it]=Calendario
GenericName[ja]=カレンダー
GenericName[ko]=달력
+GenericName[ku]=Salname
GenericName[ku_IQ]=Salname
GenericName[lt]=Kalendorius
+GenericName[lv]=Kalendārs
GenericName[ml]=കലണ്ടർ
-GenericName[mn]=Календар
+GenericName[mn]=Хуанли
GenericName[ms]=Kalendar
+GenericName[nb]=Kalender
GenericName[ne]=क्यालेन्डर
GenericName[nl]=Kalender
+GenericName[pa]=ਕੈਲੰਡਰ
GenericName[pl]=Kalendarz
GenericName[pt]=Calendário
GenericName[pt_BR]=Calendário
GenericName[ro]=Calendar
GenericName[ru]=Календарь
+GenericName[si]=දින දසුන
GenericName[sk]=Kalendár
GenericName[sl]=Koledar
+GenericName[sq]=Kalendar
GenericName[sr]=Календар
GenericName[sv]=Kalender
+GenericName[sw]=Kalenda
GenericName[tr]=Takvim
+GenericName[ug]=كالىندار
GenericName[uk]=Календар
GenericName[vi]=Lịch
GenericName[zh_CN]=日历
+GenericName[zh_HK]=日曆
GenericName[zh_TW]=日曆
Name[am_ET]=ዲፕኢን ቀን መቁጠሪያ
Name[ar]=تقويم ديبين
@@ -111,48 +138,58 @@
Name[az]=Deepin Kalendarı
Name[bg]=Deepin Календар
Name[bn]=ডিপিন ক্যালেন্ডার
+Name[bo]=གྲ་རྒྱས་པའི་ལོ་ཐོ།
Name[ca]=Calendari del Deepin
Name[cs]=Kalendář
Name[da]=Deepin kalender
Name[de]=Deepin Kalender
Name[el]=Ημερολόγιο Deepin
+Name[en_AU]=Deepin Calendar
Name[en_GB]=Deepin Calendar
Name[eo]=Deepin kalendaro
-Name[es]=Calendario Deepin
-Name[es_419]=Calendario Deepin
+Name[es]=Calendario
+Name[et]=Deepin Kalender
Name[fa]=تقویم Deepin
-Name[fi]=Deepin-kalenteri
-Name[fr]=Deepin Calendrier
+Name[fi]=Deepin kalenteri
+Name[fr]=Calendrier Deepin
Name[gl_ES]=Calendario do Deepin
Name[hi_IN]=डीपिन दिनदर्शिका
Name[hr]=Deepin kalendar
Name[hu]=Deepin Naptár
Name[id]=Kalender Deepin
-Name[it]=Deepin Calendar
+Name[it]=Calendario di Deepin
Name[ja]=Deepin カレンダー
Name[kn_IN]=ಡೀಪಿನ್ ಕ್ಯಾಲೆಂಡರ್
-Name[ko]=Deepin Calendar
+Name[ko]=Deepin 달력
+Name[ku]=Salnameya Deepin
Name[ku_IQ]=ساڵنامەی Deepin
Name[lt]=Deepin kalendorius
+Name[lv]=Deepin kalendārs
Name[ml]=ഡീപിൻ കലണ്ടർ
+Name[mn]=Деепин Хуанли
Name[ms]=Kalendar Deepin
Name[nb]=Deepin Kalender
Name[ne]=डिपिन क्यालेन्डर
Name[nl]=Deepin Kalender
+Name[pa]=ਡੀਪਿਨ ਕੈਲੰਡਰ
Name[pl]=Kalendarz Deepin
-Name[pt]=Deepin Calendar
-Name[pt_BR]=Calendário
+Name[pt]=Calendário Deepin
+Name[pt_BR]=deepin Calendário
Name[ro]=Calendarul Deepin
Name[ru]=Календарь Deepin
+Name[si]=Deepin දින දසුන
Name[sk]=Deepin Kalendár
Name[sl]=Koledar Deepin
+Name[sq]=Kalendar Deepin
Name[sr]=Дипин Календар
Name[sv]=Deepin kalender
+Name[sw]=Kalenda ya Deepin
Name[ta]=டீபின் நாள்காட்டி
Name[tr]=Deepin Takvim
Name[ug]=Deepin كالىندارى
Name[uk]=Календар Deepin
Name[vi]=Lịch Deepin
-Name[zh_CN]=日历
+Name[zh_CN]=深度日历
+Name[zh_HK]=深度日曆
Name[zh_TW]=Deepin 日曆
diff -Nru dde-calendar-5.7.0.4/CMakeLists.txt dde-calendar-5.7.0.23/CMakeLists.txt
--- dde-calendar-5.7.0.4/CMakeLists.txt 2020-07-10 09:08:38.000000000 +0000
+++ dde-calendar-5.7.0.23/CMakeLists.txt 2020-11-03 09:03:22.000000000 +0000
@@ -18,10 +18,14 @@
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTORCC ON)
-set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall")
+set(CMAKE_CXX_FLAGS "-Wl,--as-needed -fPIE")
+set(CMAKE_EXE_LINKER_FLAGS "-pie")
+
if (${CMAKE_SYSTEM_PROCESSOR} MATCHES "sw_64")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mieee")
+elseif (${CMAKE_SYSTEM_PROCESSOR} MATCHES "mips64")
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -ftree-vectorize -march=loongson3a -mhard-float -mno-micromips -mno-mips16 -flax-vector-conversions -mloongson-ext2 -mloongson-mmi -Wl,--as-needed")
endif ()
#compile flags
@@ -107,3 +111,4 @@
install(FILES ${APP_QM_FILES} DESTINATION share/dde-calendar/translations)
install(FILES ${APP_DESKTOP} DESTINATION share/applications)
install(FILES ${APP_SERVICE} DESTINATION share/dbus-1/services)
+add_subdirectory(schedule-plugin)
diff -Nru dde-calendar-5.7.0.4/CMakeLists.txt.user dde-calendar-5.7.0.23/CMakeLists.txt.user
--- dde-calendar-5.7.0.4/CMakeLists.txt.user 2020-07-10 09:08:38.000000000 +0000
+++ dde-calendar-5.7.0.23/CMakeLists.txt.user 1970-01-01 00:00:00.000000000 +0000
@@ -1,375 +0,0 @@
-
-
-
-
-
- EnvironmentId
- {007bf241-48ca-47e0-a8f7-51fca421f6ce}
-
-
- ProjectExplorer.Project.ActiveTarget
- 0
-
-
- ProjectExplorer.Project.EditorSettings
-
- true
- false
- true
-
- Cpp
-
- CppGlobal
-
-
-
- QmlJS
-
- QmlJSGlobal
-
-
- 2
- UTF-8
- false
- 4
- false
- 80
- true
- true
- 1
- true
- false
- 0
- true
- true
- 0
- 8
- true
- 1
- true
- true
- true
- false
-
-
-
- ProjectExplorer.Project.PluginSettings
-
-
- true
-
-
-
- ProjectExplorer.Project.Target.0
-
- cmake
- cmake
- {09e64d91-b4ea-4e80-b920-864834365e6e}
- 0
- 0
- 0
-
-
- /home/uniontech/workspace/GitSrc/build-calendar-cmake-Default
-
-
-
-
- all
-
- true
- CMake Build
-
- CMakeProjectManager.MakeStep
-
- 1
- Build
-
- ProjectExplorer.BuildSteps.Build
-
-
-
-
-
- all
-
- true
- CMake Build
-
- CMakeProjectManager.MakeStep
-
- 1
- Clean
-
- ProjectExplorer.BuildSteps.Clean
-
- 2
- false
-
- Default
- Default
- CMakeProjectManager.CMakeBuildConfiguration
-
-
-
- CMAKE_BUILD_TYPE:STRING=Debug
-
- /home/uniontech/workspace/GitSrc/build-calendar-cmake-Debug
-
-
-
-
- all
-
- true
- CMake Build
-
- CMakeProjectManager.MakeStep
-
- 1
- Build
-
- ProjectExplorer.BuildSteps.Build
-
-
-
-
-
- all
-
- true
- CMake Build
-
- CMakeProjectManager.MakeStep
-
- 1
- Clean
-
- ProjectExplorer.BuildSteps.Clean
-
- 2
- false
-
- Debug
- Debug
- CMakeProjectManager.CMakeBuildConfiguration
-
-
-
- CMAKE_BUILD_TYPE:STRING=Release
-
- /home/uniontech/workspace/GitSrc/build-calendar-cmake-Release
-
-
-
-
- all
-
- true
- CMake Build
-
- CMakeProjectManager.MakeStep
-
- 1
- Build
-
- ProjectExplorer.BuildSteps.Build
-
-
-
-
-
- all
-
- true
- CMake Build
-
- CMakeProjectManager.MakeStep
-
- 1
- Clean
-
- ProjectExplorer.BuildSteps.Clean
-
- 2
- false
-
- Release
- Release
- CMakeProjectManager.CMakeBuildConfiguration
-
-
-
- CMAKE_BUILD_TYPE:STRING=RelWithDebInfo
-
- /home/uniontech/workspace/GitSrc/build-calendar-cmake-Release with Debug Information
-
-
-
-
- all
-
- true
- CMake Build
-
- CMakeProjectManager.MakeStep
-
- 1
- Build
-
- ProjectExplorer.BuildSteps.Build
-
-
-
-
-
- all
-
- true
- CMake Build
-
- CMakeProjectManager.MakeStep
-
- 1
- Clean
-
- ProjectExplorer.BuildSteps.Clean
-
- 2
- false
-
- Release with Debug Information
- Release with Debug Information
- CMakeProjectManager.CMakeBuildConfiguration
-
-
-
- CMAKE_BUILD_TYPE:STRING=MinSizeRel
-
- /home/uniontech/workspace/GitSrc/build-calendar-cmake-Minimum Size Release
-
-
-
-
- all
-
- true
- CMake Build
-
- CMakeProjectManager.MakeStep
-
- 1
- Build
-
- ProjectExplorer.BuildSteps.Build
-
-
-
-
-
- all
-
- true
- CMake Build
-
- CMakeProjectManager.MakeStep
-
- 1
- Clean
-
- ProjectExplorer.BuildSteps.Clean
-
- 2
- false
-
- Minimum Size Release
- Minimum Size Release
- CMakeProjectManager.CMakeBuildConfiguration
-
- 5
-
-
- 0
- 部署
-
- ProjectExplorer.BuildSteps.Deploy
-
- 1
- Deploy Configuration
-
- ProjectExplorer.DefaultDeployConfiguration
-
- 1
-
-
- false
- false
- 1000
-
- true
-
- false
- false
- false
- false
- true
- 0.01
- 10
- true
- 1
- 25
-
- 1
- true
- false
- true
- valgrind
-
- 0
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
-
- 2
-
- dde-calendar
-
- CMakeProjectManager.CMakeRunConfiguration.dde-calendar
-/home/uniontech/workspace/GitSrc/calendar/
-
- 3768
- false
- true
- false
- false
- true
-
- /home/uniontech/workspace/GitSrc/build-calendar-cmake-Default
-
- 1
-
-
-
- ProjectExplorer.Project.TargetCount
- 1
-
-
- ProjectExplorer.Project.Updater.FileVersion
- 20
-
-
- Version
- 20
-
-
diff -Nru dde-calendar-5.7.0.4/debian/changelog dde-calendar-5.7.0.23/debian/changelog
--- dde-calendar-5.7.0.4/debian/changelog 2020-12-05 16:18:58.000000000 +0000
+++ dde-calendar-5.7.0.23/debian/changelog 2021-02-28 10:25:11.000000000 +0000
@@ -1,101 +1,11 @@
-dde-calendar (5.7.0.4-1) unstable; urgency=medium
+dde-calendar (5.7.0.23-1ubuntu1) hirsute; urgency=medium
- [ Clay Stan ]
- * New upstream release 5.7.0.4.
- + Add Clay Stan to uploaders list.
+ * Rebuild for hirsute.
- [ Arun Kumar Pariyar ]
- * debian/control:
- + Add Arun Kumar Pariyar to Uploaders.
- + Bump Standards-Version to 4.5.1.
- + Bump debhelper compat to v13.
- + Update Build-Depends and tighten version for libdtkwidget-dev
- to (>=5.2~) and libdframeworkdbus-dev to (>=5.2.0~).
- * debian/rules: Ensure proper build and drop LDFLAGS.
- * debian/patches:
- + Add 0001-fix-qt5-14-incompatibility-issue patch file.
- + Add 0002-fix-desktop-entry-lacks-keywords-entry patch file.
- * debian/upstream: Set upstream metadata fields.
- * debian/copyright: Update copyright information.
+ -- Arun Kumar Pariyar Sun, 28 Feb 2021 16:10:11 +0545
- -- Arun Kumar Pariyar Sat, 05 Dec 2020 22:03:58 +0545
+dde-calendar (5.7.0.23-1) groovy; urgency=medium
-dde-calendar (5.0.1-1) unstable; urgency=medium
+ * New upstream 5.7.0.23.
- * Team upload.
- * New upstream release 5.0.1.
- * debian/control:
- + Switch buildsystem from qmake to cmake (>= 3.7).
-
- -- Boyuan Yang Sat, 07 Dec 2019 14:49:00 -0500
-
-dde-calendar (1.2.6-1) unstable; urgency=high
-
- * Team upload.
- * New upstream version 1.2.6.
- * Rebuild for Debian Buster.
- + Fix crashing when starting up the program.
- * debian/control:
- + Bump debhelper compat to v12.
- + Bump Standards-Version to 4.3.0.
- + R³: Use Rules-Requires-Root: no.
-
- -- Boyuan Yang Mon, 07 Jan 2019 09:26:38 -0500
-
-dde-calendar (1.2.5-1) unstable; urgency=medium
-
- * New upstream version 1.2.5
- * Bump Standards-Version to 4.2.0 (no changes needed).
-
- -- Yanhao Mo Thu, 09 Aug 2018 10:06:58 +0800
-
-dde-calendar (1.2.4-1) unstable; urgency=medium
-
- * New upstream version 1.2.4
- * Bump Standards-Version to 4.1.5 (no changes needed).
-
- -- Yanhao Mo Wed, 01 Aug 2018 09:52:35 +0800
-
-dde-calendar (1.2.3-1) unstable; urgency=medium
-
- * New upstream release.
- * d/control: Use pkg-deepin-devel@lists.alioth.debian.org in maintainer
- field.
- * d/patches: Drop patches, applied by upstream.
-
- -- Yanhao Mo Sat, 26 May 2018 10:56:44 +0800
-
-dde-calendar (1.2.2-2) unstable; urgency=medium
-
- * Team upload.
- * Backport upstream patch to fix date refreshing issue.
- * Use team+pkg-deepin@tracker.debian.org in maintainer field.
- * Bump Standards-Version to 4.1.4 (no changes needed).
- * d/rules: Use "dh-missing --fail-missing".
- * d/copyright: Fix typos.
-
- -- Boyuan Yang <073plan@gmail.com> Fri, 20 Apr 2018 17:04:32 +0800
-
-dde-calendar (1.2.2-1) unstable; urgency=medium
-
- * New release.
- * Some Bug Fixes
- * d/rules: use /usr/share/dpkg/pkg-info.mk instead of dpkg-parsechangelog.
- * d/control: Use Salsa platform for Vcs field.
- * debian/control: Update Standers-Version to 4.1.3.
- * debian/compat: Switch compat to level 11.
-
- -- Yanhao Mo Fri, 30 Mar 2018 10:57:34 +0800
-
-dde-calendar (1.1.1-2) unstable; urgency=medium
-
- * Team upload.
- * Set build architecture as linux-any.
-
- -- Boyuan Yang <073plan@gmail.com> Tue, 12 Dec 2017 09:56:27 +0800
-
-dde-calendar (1.1.1-1) unstable; urgency=medium
-
- * Initial release (Closes: #871981)
-
- -- Yangfl Thu, 07 Dec 2017 15:19:48 +0800
+ -- Arun Kumar Pariyar Tue, 12 Jan 2021 17:16:00 +0545
diff -Nru dde-calendar-5.7.0.4/debian/compat dde-calendar-5.7.0.23/debian/compat
--- dde-calendar-5.7.0.4/debian/compat 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/debian/compat 2021-01-12 11:28:49.000000000 +0000
@@ -0,0 +1 @@
+9
diff -Nru dde-calendar-5.7.0.4/debian/control dde-calendar-5.7.0.23/debian/control
--- dde-calendar-5.7.0.4/debian/control 2020-12-05 16:18:58.000000000 +0000
+++ dde-calendar-5.7.0.23/debian/control 2021-01-12 11:28:49.000000000 +0000
@@ -1,38 +1,27 @@
Source: dde-calendar
Section: utils
Priority: optional
-Maintainer: Debian Deepin Packaging Team
-Uploaders:
- Yangfl ,
- Yanhao Mo ,
- Arun Kumar Pariyar ,
- Clay Stan ,
+Maintainer: Deepin Packages Builder
Build-Depends:
- cmake (>= 3.7),
- debhelper-compat (= 13),
- deepin-gettext-tools,
- libdframeworkdbus-dev (>=5.2.0~),
- libdtkgui-dev,
- libdtkwidget-dev (>=5.2~),
- libqt5svg5-dev,
+ debhelper (>=9),
+ cmake,
pkg-config,
qtbase5-dev,
+ libdtkgui-dev,
+ libdtkwidget-dev,
qttools5-dev-tools,
-Rules-Requires-Root: no
-Standards-Version: 4.5.1
-Homepage: https://github.com/linuxdeepin/dde-calendar
-Vcs-Git: https://salsa.debian.org/pkg-deepin-team/dde-calendar.git
-Vcs-Browser: https://salsa.debian.org/pkg-deepin-team/dde-calendar
+ deepin-gettext-tools,
+ libdframeworkdbus-dev
+Standards-Version: 3.9.6
+Homepage: http://www.deepin.org
+Vcs-Git: https://github.com/linuxdeepin/dde-calendar
Package: dde-calendar
-Architecture: linux-any
+Architecture: any
Depends:
- ${misc:Depends},
${shlibs:Depends},
-Recommends:
- dde-api,
-Description: Deepin Calendar
- Deepin Calendar is an easy calendar tool developed by Deepin Technology, main
- features current date, solar terms, lunar calendar and world holidays.
- .
- This package is part of DDE (Deepin Desktop Environment).
+ ${misc:Depends},
+ dde-api
+Description: Calendar is a smart daily planner to schedule all things in life.
+ Calendar is a small management tool for personal life that combines time
+ and events and integrates the function of memorizing and scheduling.
diff -Nru dde-calendar-5.7.0.4/debian/copyright dde-calendar-5.7.0.23/debian/copyright
--- dde-calendar-5.7.0.4/debian/copyright 2020-12-05 16:18:58.000000000 +0000
+++ dde-calendar-5.7.0.23/debian/copyright 2021-01-12 11:28:49.000000000 +0000
@@ -1,25 +1,13 @@
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: dde-calendar
Source: https://github.com/linuxdeepin/dde-calendar
-Upstream-Contact: https://github.com/linuxdeepin/dde-calendar/issues
Files: *
-Copyright: 2015-2018 Deepin Technology Co., Ltd.
- 2019-2020 Uniontech Software Technology Co.,Ltd.
+Copyright: Deepin Technology Co., Ltd.
License: GPL-3+
-
-Files: debian/*
-Copyright: 2016-2017 Deepin Technology Co., Ltd.
- 2017 Yangfl
- 2019 Boyuan Yang
- 2020 Arun Kumar Pariyar
- 2020 Clay Stan
-License: GPL-3+
-
-License: GPL-3+
- This program is free software: you can redistribute it and/or modify
+ This package is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
+ the Free Software Foundation; either version 3 of the License, or
(at your option) any later version.
.
This package is distributed in the hope that it will be useful,
@@ -28,7 +16,7 @@
GNU General Public License for more details.
.
You should have received a copy of the GNU General Public License
- along with this program. If not, see .
+ along with this program. If not, see
.
On Debian systems, the complete text of the GNU General
Public License version 3 can be found in "/usr/share/common-licenses/GPL-3".
diff -Nru dde-calendar-5.7.0.4/debian/dde-calendar.1 dde-calendar-5.7.0.23/debian/dde-calendar.1
--- dde-calendar-5.7.0.4/debian/dde-calendar.1 2020-12-05 16:18:58.000000000 +0000
+++ dde-calendar-5.7.0.23/debian/dde-calendar.1 1970-01-01 00:00:00.000000000 +0000
@@ -1,29 +0,0 @@
-.TH "dde-calendar" "1" "2017-12-07" "Deepin"
-
-.SH NAME
-dde\-calendar \- Deepin's voice recorder
-
-.SH SYNOPSIS
-.B dde\-calendar
-
-.SH DESCRIPTION
-.B dde\-calendar
-is an easy calendar tool developed by Deepin Technology, main features current date, solar terms, lunar calendar and world holidays.
-
-.SH OPTIONS
-.PP
-This program does not accept any command line options.
-
-.SH SEE ALSO
-https://www.deepin.org/en/original/dde-calendar/
-
-.SH AUTHOR
-.PP
-.B dde\-calendar
-is written by Deepin Technology Co., Ltd.
-.PP
-This manual page was written by
-.MT mmyangfl@\:gmail.com
-Yangfl
-.ME
-for the Debian Project (but may be used by others).
diff -Nru dde-calendar-5.7.0.4/debian/docs dde-calendar-5.7.0.23/debian/docs
--- dde-calendar-5.7.0.4/debian/docs 2020-12-05 16:18:58.000000000 +0000
+++ dde-calendar-5.7.0.23/debian/docs 1970-01-01 00:00:00.000000000 +0000
@@ -1 +0,0 @@
-README.md
diff -Nru dde-calendar-5.7.0.4/debian/manpages dde-calendar-5.7.0.23/debian/manpages
--- dde-calendar-5.7.0.4/debian/manpages 2020-12-05 16:18:58.000000000 +0000
+++ dde-calendar-5.7.0.23/debian/manpages 1970-01-01 00:00:00.000000000 +0000
@@ -1 +0,0 @@
-debian/dde-calendar.1
diff -Nru dde-calendar-5.7.0.4/debian/patches/0001-fix-qt5-14-incompatibility-issue.patch dde-calendar-5.7.0.23/debian/patches/0001-fix-qt5-14-incompatibility-issue.patch
--- dde-calendar-5.7.0.4/debian/patches/0001-fix-qt5-14-incompatibility-issue.patch 2020-12-05 16:18:58.000000000 +0000
+++ dde-calendar-5.7.0.23/debian/patches/0001-fix-qt5-14-incompatibility-issue.patch 1970-01-01 00:00:00.000000000 +0000
@@ -1,97 +0,0 @@
-From: Arun Kumar Pariyar
-Date: Tue, 14 Jul 2020 16:46:49 +0545
-Subject: [PATCH] fix qt5-14 incompatibility issue
-
----
- src/customframe.cpp | 1 +
- src/daymonthview.cpp | 2 ++
- src/draginfographicsview.cpp | 1 +
- src/schcedulesearchview.cpp | 2 ++
- src/weekheadview.cpp | 1 +
- src/yearwindow.cpp | 1 +
- 6 files changed, 8 insertions(+)
-
-diff --git a/src/customframe.cpp b/src/customframe.cpp
-index cb33581..dcfe2ea 100644
---- a/src/customframe.cpp
-+++ b/src/customframe.cpp
-@@ -20,6 +20,7 @@
- */
- #include "customframe.h"
- #include
-+#include
- #include
- #include
- DGUI_USE_NAMESPACE
-diff --git a/src/daymonthview.cpp b/src/daymonthview.cpp
-index f80a1f5..a268526 100644
---- a/src/daymonthview.cpp
-+++ b/src/daymonthview.cpp
-@@ -22,11 +22,13 @@
- #include
- #include
- #include
-+#include
- #include
- #include
- #include
- #include
- #include
-+#include
- #include "daymonthview.h"
- #include
- #include "constants.h"
-diff --git a/src/draginfographicsview.cpp b/src/draginfographicsview.cpp
-index 8648f4f..c9591b5 100644
---- a/src/draginfographicsview.cpp
-+++ b/src/draginfographicsview.cpp
-@@ -25,6 +25,7 @@
- #include
- #include
- #include
-+#include
-
- #include "schceduledlg.h"
- #include "schcedulectrldlg.h"
-diff --git a/src/schcedulesearchview.cpp b/src/schcedulesearchview.cpp
-index c090ed5..748515f 100755
---- a/src/schcedulesearchview.cpp
-+++ b/src/schcedulesearchview.cpp
-@@ -22,8 +22,10 @@
- #include
- #include
- #include
-+#include
- #include
- #include
-+#include
- #include
- #include "schceduledlg.h"
- #include "scheduledatamanage.h"
-diff --git a/src/weekheadview.cpp b/src/weekheadview.cpp
-index 64964fb..7606a87 100755
---- a/src/weekheadview.cpp
-+++ b/src/weekheadview.cpp
-@@ -22,6 +22,7 @@
-
- #include
- #include
-+#include
- #include
- #include
- #include
-diff --git a/src/yearwindow.cpp b/src/yearwindow.cpp
-index d2faf29..eccb8c0 100644
---- a/src/yearwindow.cpp
-+++ b/src/yearwindow.cpp
-@@ -24,6 +24,7 @@
- #include
- #include
- #include
-+#include
- #include "schcedulesearchview.h"
- DGUI_USE_NAMESPACE
- CYearWindow::CYearWindow(QWidget *parent): QMainWindow (parent)
---
-2.25.1
-
diff -Nru dde-calendar-5.7.0.4/debian/patches/0002-fix-desktop-entry-lacks-keywords-entry.patch dde-calendar-5.7.0.23/debian/patches/0002-fix-desktop-entry-lacks-keywords-entry.patch
--- dde-calendar-5.7.0.4/debian/patches/0002-fix-desktop-entry-lacks-keywords-entry.patch 2020-12-05 16:18:58.000000000 +0000
+++ dde-calendar-5.7.0.23/debian/patches/0002-fix-desktop-entry-lacks-keywords-entry.patch 1970-01-01 00:00:00.000000000 +0000
@@ -1,22 +0,0 @@
-From: Arun Kumar Pariyar
-Date: Sat, 5 Dec 2020 22:42:33 +0545
-Subject: [PATCH] fix desktop-entry-lacks-keywords-entry
-
----
- assets/dde-calendar.desktop | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/assets/dde-calendar.desktop b/assets/dde-calendar.desktop
-index 4936d17..dc17813 100644
---- a/assets/dde-calendar.desktop
-+++ b/assets/dde-calendar.desktop
-@@ -1,5 +1,6 @@
- [Desktop Entry]
- Categories=Application;Utility;Calendar;
-+Keywords=calendar;date;deepin;dde;
- Comment=Calendar is a date tool.
- Exec=dde-calendar
- GenericName=Calendar
---
-2.27.0
-
diff -Nru dde-calendar-5.7.0.4/debian/patches/fix-qt5-15-compatibility.patch dde-calendar-5.7.0.23/debian/patches/fix-qt5-15-compatibility.patch
--- dde-calendar-5.7.0.4/debian/patches/fix-qt5-15-compatibility.patch 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/debian/patches/fix-qt5-15-compatibility.patch 2021-01-12 11:43:33.000000000 +0000
@@ -0,0 +1,115 @@
+Description:
+ TODO: Put a short summary on the line above and replace this paragraph
+ with a longer explanation of this change. Complete the meta-information
+ with other relevant fields (see below for details). To make it easier, the
+ information below has been extracted from the changelog. Adjust it or drop
+ it.
+ .
+ dde-calendar (5.7.0.23-1) groovy; urgency=medium
+ .
+ * New upstream 5.7.0.23.
+Author: Arun Kumar Pariyar
+
+---
+The information above should follow the Patch Tagging Guidelines, please
+checkout http://dep.debian.net/deps/dep3/ to learn about the format. Here
+are templates for supplementary fields that you might want to add:
+
+Origin: ,
+Bug:
+Bug-Debian: https://bugs.debian.org/
+Bug-Ubuntu: https://launchpad.net/bugs/
+Forwarded:
+Reviewed-By:
+Last-Update: 2021-01-12
+
+--- dde-calendar-5.7.0.23.orig/schedule-plugin/src/widget/itemwidget.h
++++ dde-calendar-5.7.0.23/schedule-plugin/src/widget/itemwidget.h
+@@ -25,6 +25,8 @@
+ #include "../data/schedulestructs.h"
+
+ #include
++#include
++#include
+ #include
+ #include
+ #include
+--- dde-calendar-5.7.0.23.orig/src/customWidget/customframe.cpp
++++ dde-calendar-5.7.0.23/src/customWidget/customframe.cpp
+@@ -24,6 +24,7 @@
+ #include
+
+ #include
++#include
+ #include
+
+ DGUI_USE_NAMESPACE
+--- dde-calendar-5.7.0.23.orig/src/view/draginfographicsview.cpp
++++ dde-calendar-5.7.0.23/src/view/draginfographicsview.cpp
+@@ -30,6 +30,7 @@
+ #include
+ #include
+ #include
++#include
+
+ DragInfoGraphicsView::DragInfoGraphicsView(DWidget *parent)
+ : DGraphicsView(parent)
+--- dde-calendar-5.7.0.23.orig/src/widget/dayWidget/daymonthview.cpp
++++ dde-calendar-5.7.0.23/src/widget/dayWidget/daymonthview.cpp
+@@ -31,11 +31,13 @@
+ #include
+ #include
+ #include
++#include
+ #include
+ #include
+ #include
+ #include
+ #include
++#include
+ #include
+
+ DGUI_USE_NAMESPACE
+--- dde-calendar-5.7.0.23.orig/src/widget/schcedulesearchview.cpp
++++ dde-calendar-5.7.0.23/src/widget/schcedulesearchview.cpp
+@@ -34,8 +34,10 @@
+ #include
+ #include
+ #include
++#include
+ #include
+ #include
++#include
+ #include
+
+ DGUI_USE_NAMESPACE
+--- dde-calendar-5.7.0.23.orig/src/widget/weekWidget/weekheadview.cpp
++++ dde-calendar-5.7.0.23/src/widget/weekWidget/weekheadview.cpp
+@@ -27,6 +27,7 @@
+
+ #include
+ #include
++#include
+ #include
+ #include
+ #include
+--- dde-calendar-5.7.0.23.orig/src/widget/yearWidget/yearview.cpp
++++ dde-calendar-5.7.0.23/src/widget/yearWidget/yearview.cpp
+@@ -32,6 +32,7 @@
+ #include
+ #include
+ #include
++#include
+ #include
+ #include
+ #include
+--- dde-calendar-5.7.0.23.orig/src/widget/yearWidget/yearwindow.cpp
++++ dde-calendar-5.7.0.23/src/widget/yearWidget/yearwindow.cpp
+@@ -26,6 +26,7 @@
+ #include
+
+ #include
++#include
+ #include
+
+ DGUI_USE_NAMESPACE
diff -Nru dde-calendar-5.7.0.4/debian/patches/series dde-calendar-5.7.0.23/debian/patches/series
--- dde-calendar-5.7.0.4/debian/patches/series 2020-12-05 16:18:58.000000000 +0000
+++ dde-calendar-5.7.0.23/debian/patches/series 2021-01-12 11:43:33.000000000 +0000
@@ -1,2 +1 @@
-0001-fix-qt5-14-incompatibility-issue.patch
-0002-fix-desktop-entry-lacks-keywords-entry.patch
+fix-qt5-15-compatibility.patch
diff -Nru dde-calendar-5.7.0.4/debian/README.Debian dde-calendar-5.7.0.23/debian/README.Debian
--- dde-calendar-5.7.0.4/debian/README.Debian 2020-12-05 16:18:58.000000000 +0000
+++ dde-calendar-5.7.0.23/debian/README.Debian 1970-01-01 00:00:00.000000000 +0000
@@ -1,7 +0,0 @@
-README.Debian for dde-calendar
-------------------------------
-
-Note that dde-calendar needs a running dde-api daemon to provide with
-lunar calendar information via D-Bus.
-
- -- Boyuan Yang <073plan@gmail.com> Tue, 12 Dec 2017 09:56:27 +0800
diff -Nru dde-calendar-5.7.0.4/debian/rules dde-calendar-5.7.0.23/debian/rules
--- dde-calendar-5.7.0.4/debian/rules 2020-12-05 16:18:58.000000000 +0000
+++ dde-calendar-5.7.0.23/debian/rules 2021-01-12 11:28:49.000000000 +0000
@@ -1,23 +1,24 @@
#!/usr/bin/make -f
-# See debhelper(7) (uncomment to enable)
-# output every command that modifies files on the build system.
-#export DH_VERBOSE = 1
-include /usr/share/dpkg/pkg-info.mk
-
-# see FEATURE AREAS in dpkg-buildflags(1)
-export DEB_BUILD_MAINT_OPTIONS = hardening=+all
-
-# see ENVIRONMENT in dpkg-buildflags(1)
-# package maintainers to append CFLAGS
-export DEB_CFLAGS_MAINT_APPEND = -Wall -pedantic
-export QT_SELECT := 5
+export QT_SELECT=5
+include /usr/share/dpkg/default.mk
+
+DEB_BUILD_ARCH ?= $(shell dpkg-architecture -qDEB_BUILD_ARCH)
+DH_AUTO_ARGS = --parallel --buildsystem=cmake
+
+# Uncomment this to turn on verbose mode.
+export DH_VERBOSE=1
%:
- dh $@
+ dh $@ --parallel
override_dh_auto_configure:
- dh_auto_configure -- VERSION=$(DEB_VERSION_UPSTREAM) LIB_INSTALL_DIR=/usr/lib/$(DEB_HOST_MULTIARCH) DEFINES+="VERSION=$(DEB_VERSION_UPSTREAM)"
+ dh_auto_configure -- \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DAPP_VERSION=$(DEB_VERSION_UPSTREAM) -DVERSION=$(DEB_VERSION_UPSTREAM) LIB_INSTALL_DIR=/usr/lib/$(DEB_HOST_MULTIARCH)
+
+#Ignore the dpkg-shlibdeps: warning (it uses none of the library's symbols)
+#Qt Mutidedia lib will ref to network libraray.
+override_dh_shlibdeps:
+ dh_shlibdeps --dpkg-shlibdeps-params=--warnings=0
-override_dh_missing:
- dh_missing --fail-missing
diff -Nru dde-calendar-5.7.0.4/debian/upstream/metadata dde-calendar-5.7.0.23/debian/upstream/metadata
--- dde-calendar-5.7.0.4/debian/upstream/metadata 2020-12-05 16:18:58.000000000 +0000
+++ dde-calendar-5.7.0.23/debian/upstream/metadata 1970-01-01 00:00:00.000000000 +0000
@@ -1,5 +0,0 @@
----
-Bug-Database: https://github.com/linuxdeepin/dde-calendar/issues
-Bug-Submit: https://github.com/linuxdeepin/dde-calendar/issues/new
-Repository: https://github.com/linuxdeepin/dde-calendar.git
-Repository-Browse: https://github.com/linuxdeepin/dde-calendar
diff -Nru dde-calendar-5.7.0.4/debian/watch dde-calendar-5.7.0.23/debian/watch
--- dde-calendar-5.7.0.4/debian/watch 2020-12-05 16:18:58.000000000 +0000
+++ dde-calendar-5.7.0.23/debian/watch 1970-01-01 00:00:00.000000000 +0000
@@ -1,4 +0,0 @@
-version=4
-opts="filenamemangle=s%(?:.*?)?v?(\d[\d.]*)\.tar\.gz%dde-calendar-$1.tar.gz%" \
- https://github.com/linuxdeepin/dde-calendar/tags \
- (?:.*?/)?(\d[\d.]*)\.tar\.gz debian uupdate
diff -Nru dde-calendar-5.7.0.4/.gitignore dde-calendar-5.7.0.23/.gitignore
--- dde-calendar-5.7.0.4/.gitignore 2020-07-10 09:08:38.000000000 +0000
+++ dde-calendar-5.7.0.23/.gitignore 2020-11-03 09:03:22.000000000 +0000
@@ -37,3 +37,4 @@
debian/files
debian/dde-calendar.substvars
CMakeLists.txt.user
+*.user.*
\ No newline at end of file
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/calendar_bg.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/calendar_bg.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/calendar_bg.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/calendar_bg.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,35 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day10.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day10.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day10.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day10.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day11.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day11.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day11.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day11.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day12.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day12.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day12.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day12.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day13.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day13.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day13.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day13.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day14.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day14.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day14.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day14.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day15.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day15.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day15.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day15.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day16.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day16.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day16.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day16.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day17.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day17.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day17.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day17.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day18.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day18.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day18.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day18.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day19.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day19.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day19.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day19.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day1.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day1.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day1.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day1.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day20.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day20.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day20.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day20.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day21.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day21.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day21.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day21.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day22.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day22.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day22.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day22.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day23.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day23.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day23.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day23.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day24.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day24.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day24.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day24.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day25.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day25.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day25.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day25.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day26.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day26.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day26.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day26.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day27.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day27.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day27.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day27.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day28.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day28.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day28.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day28.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day29.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day29.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day29.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day29.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day2.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day2.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day2.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day2.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day30.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day30.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day30.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day30.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day31.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day31.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day31.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day31.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day3.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day3.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day3.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day3.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day4.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day4.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day4.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day4.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day5.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day5.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day5.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day5.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day6.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day6.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day6.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day6.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day7.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day7.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day7.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day7.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day8.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day8.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day8.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day8.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day9.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day9.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/day9.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/day9.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,15 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/month10.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/month10.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/month10.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/month10.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,3 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/month11.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/month11.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/month11.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/month11.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,3 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/month12.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/month12.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/month12.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/month12.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,3 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/month1.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/month1.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/month1.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/month1.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,3 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/month2.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/month2.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/month2.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/month2.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,3 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/month3.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/month3.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/month3.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/month3.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,3 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/month4.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/month4.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/month4.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/month4.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,3 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/month5.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/month5.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/month5.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/month5.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,3 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/month6.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/month6.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/month6.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/month6.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,3 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/month7.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/month7.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/month7.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/month7.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,3 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/month8.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/month8.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/month8.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/month8.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,3 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/month9.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/month9.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/month9.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/month9.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,3 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/week1.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/week1.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/week1.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/week1.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,3 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/week2.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/week2.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/week2.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/week2.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,3 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/week3.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/week3.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/week3.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/week3.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,3 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/week4.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/week4.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/week4.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/week4.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,3 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/week5.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/week5.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/week5.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/week5.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,3 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/week6.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/week6.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/week6.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/week6.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,3 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/week7.svg dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/week7.svg
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources/DynamicIcon/week7.svg 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources/DynamicIcon/week7.svg 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,3 @@
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/assets/resources.qrc dde-calendar-5.7.0.23/schedule-plugin/assets/resources.qrc
--- dde-calendar-5.7.0.4/schedule-plugin/assets/resources.qrc 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/assets/resources.qrc 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,55 @@
+
+
+ resources/DynamicIcon/calendar_bg.svg
+ resources/DynamicIcon/day1.svg
+ resources/DynamicIcon/day2.svg
+ resources/DynamicIcon/day3.svg
+ resources/DynamicIcon/day4.svg
+ resources/DynamicIcon/day5.svg
+ resources/DynamicIcon/day6.svg
+ resources/DynamicIcon/day7.svg
+ resources/DynamicIcon/day8.svg
+ resources/DynamicIcon/day9.svg
+ resources/DynamicIcon/day10.svg
+ resources/DynamicIcon/day11.svg
+ resources/DynamicIcon/day12.svg
+ resources/DynamicIcon/day13.svg
+ resources/DynamicIcon/day14.svg
+ resources/DynamicIcon/day15.svg
+ resources/DynamicIcon/day16.svg
+ resources/DynamicIcon/day17.svg
+ resources/DynamicIcon/day18.svg
+ resources/DynamicIcon/day19.svg
+ resources/DynamicIcon/day20.svg
+ resources/DynamicIcon/day21.svg
+ resources/DynamicIcon/day22.svg
+ resources/DynamicIcon/day23.svg
+ resources/DynamicIcon/day24.svg
+ resources/DynamicIcon/day25.svg
+ resources/DynamicIcon/day26.svg
+ resources/DynamicIcon/day27.svg
+ resources/DynamicIcon/day28.svg
+ resources/DynamicIcon/day29.svg
+ resources/DynamicIcon/day30.svg
+ resources/DynamicIcon/day31.svg
+ resources/DynamicIcon/month1.svg
+ resources/DynamicIcon/month2.svg
+ resources/DynamicIcon/month3.svg
+ resources/DynamicIcon/month4.svg
+ resources/DynamicIcon/month5.svg
+ resources/DynamicIcon/month6.svg
+ resources/DynamicIcon/month7.svg
+ resources/DynamicIcon/month8.svg
+ resources/DynamicIcon/month9.svg
+ resources/DynamicIcon/month10.svg
+ resources/DynamicIcon/month11.svg
+ resources/DynamicIcon/month12.svg
+ resources/DynamicIcon/week1.svg
+ resources/DynamicIcon/week2.svg
+ resources/DynamicIcon/week3.svg
+ resources/DynamicIcon/week4.svg
+ resources/DynamicIcon/week5.svg
+ resources/DynamicIcon/week6.svg
+ resources/DynamicIcon/week7.svg
+
+
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/CMakeLists.txt dde-calendar-5.7.0.23/schedule-plugin/CMakeLists.txt
--- dde-calendar-5.7.0.4/schedule-plugin/CMakeLists.txt 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/CMakeLists.txt 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,84 @@
+cmake_minimum_required(VERSION 3.7)
+
+if (NOT DEFINED VERSION)
+ set(VERSION 1.2.2)
+endif ()
+
+#common resource names
+set(APP_RES_DIR "assets")
+set(APP_BIN_NAME "uosschedulex-plugin")
+set(APP_QRC "${APP_RES_DIR}/resources.qrc")
+
+project(${APP_BIN_NAME})
+
+set(CMAKE_CXX_STANDARD 11)
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+set(CMAKE_AUTOMOC ON)
+set(CMAKE_AUTORCC ON)
+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall")
+
+if (${CMAKE_SYSTEM_PROCESSOR} MATCHES "sw_64")
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mieee")
+endif ()
+add_definitions("-DSCHEDULEPLUGIN_LIBRARY")
+add_definitions("-DQT_DEPRECATED_WARNINGS")
+#compile flags
+if (CMAKE_BUILD_TYPE MATCHES Debug)
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -Wall -Wextra")
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g -Wall -Wextra")
+
+ # Enable Qt builtin debug mode
+ add_definitions("-DQT_MESSAGELOGCONTEXT")
+else()
+ # -Wl, -O2 Enable linker optimizations
+ # -Wl, --gc-sections Remove unused code resulting from -fdsta-sections and
+ # -ffunction-sections
+ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -O2 -Wl,-O1 -Wl,--gc-sections")
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -O2 -Wl,-O1 -Wl,--gc-sections")
+endif()
+
+macro(SUBDIRLIST result curdir)
+ file(GLOB children RELATIVE ${curdir} ${curdir}/*)
+ set(dirlist "")
+ foreach(child ${children})
+ if(IS_DIRECTORY ${curdir}/${child})
+ LIST(APPEND dirlist ${child})
+ endif()
+ endforeach()
+ set(${result} ${dirlist})
+endmacro()
+
+include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src)
+
+SUBDIRLIST(all_src ${CMAKE_CURRENT_SOURCE_DIR}/src)
+
+#Include all app own subdirectorys
+foreach(subdir ${all_src})
+ include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src/${subdir})
+endforeach()
+
+file(GLOB_RECURSE Schedule_Plugin_SRC ${CMAKE_CURRENT_LIST_DIR}/src/*.cpp)
+
+find_package(PkgConfig REQUIRED)
+find_package(DFrameworkdbus REQUIRED)
+find_package(DtkWidget REQUIRED)
+find_package(Qt5Svg REQUIRED)
+find_package(Qt5DBus REQUIRED)
+
+
+include_directories(${Qt5Gui_PRIVATE_INCLUDE_DIRS})
+
+# Tell CMake to create the lib
+add_library(${PROJECT_NAME} SHARED ${Schedule_Plugin_SRC} ${APP_QRC} src/interface/service.h)
+
+target_include_directories(${PROJECT_NAME} PUBLIC ${DtkWidget_INCLUDE_DIRS} ${OBJECT_BINARY_DIR})
+
+target_link_libraries(${PROJECT_NAME}
+ ${Qt5Svg_LIBRARIES}
+ ${Qt5DBus_LIBRARIES}
+ ${DtkWidget_LIBRARIES}
+ ${DFrameworkdbus_LIBRARIES}
+)
+
+# Install files
+install(TARGETS ${PROJECT_NAME} DESTINATION /usr/lib/deepin-aiassistant/serivce-plugins)
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/src/data/canceljsondata.cpp dde-calendar-5.7.0.23/schedule-plugin/src/data/canceljsondata.cpp
--- dde-calendar-5.7.0.4/schedule-plugin/src/data/canceljsondata.cpp 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/src/data/canceljsondata.cpp 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,32 @@
+/*
+* Copyright (C) 2019 ~ 2020 Uniontech Software Technology Co.,Ltd.
+*
+* Author: uniontech
+*
+* Maintainer: uniontech
+*
+* This program is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published by
+* the Free Software Foundation, either version 3 of the License, or
+* any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program. If not, see .
+*/
+#include "canceljsondata.h"
+#include
+
+#include "../globaldef.h"
+cancelJsonData::cancelJsonData()
+ : JsonData()
+{
+}
+
+cancelJsonData::~cancelJsonData()
+{
+}
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/src/data/canceljsondata.h dde-calendar-5.7.0.23/schedule-plugin/src/data/canceljsondata.h
--- dde-calendar-5.7.0.4/schedule-plugin/src/data/canceljsondata.h 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/src/data/canceljsondata.h 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,32 @@
+/*
+* Copyright (C) 2019 ~ 2020 Uniontech Software Technology Co.,Ltd.
+*
+* Author: uniontech
+*
+* Maintainer: uniontech
+*
+* This program is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published by
+* the Free Software Foundation, either version 3 of the License, or
+* any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program. If not, see .
+*/
+#ifndef CANCELJSONDATA_H
+#define CANCELJSONDATA_H
+#include "jsondata.h"
+
+class cancelJsonData : public JsonData
+{
+public:
+ cancelJsonData();
+ ~cancelJsonData() override;
+};
+
+#endif // CANCELJSONDATA_H
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/src/data/changejsondata.cpp dde-calendar-5.7.0.23/schedule-plugin/src/data/changejsondata.cpp
--- dde-calendar-5.7.0.4/schedule-plugin/src/data/changejsondata.cpp 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/src/data/changejsondata.cpp 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,106 @@
+/*
+* Copyright (C) 2019 ~ 2020 Uniontech Software Technology Co.,Ltd.
+*
+* Author: uniontech
+*
+* Maintainer: uniontech
+*
+* This program is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published by
+* the Free Software Foundation, either version 3 of the License, or
+* any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program. If not, see .
+*/
+#include "changejsondata.h"
+
+#include "../globaldef.h"
+
+#include
+
+changejsondata::changejsondata()
+ : JsonData()
+{
+}
+
+void changejsondata::jsonObjResolve(const QJsonObject &jsobj)
+{
+ if (jsobj[JSON_NAME] == JSON_FROMDATETIME) {
+ fromDatetimeJsonResolve(jsobj);
+ return;
+ }
+ if (jsobj[JSON_NAME] == JSON_TODATETIME) {
+ toDatetimeJsonResolve(jsobj);
+ return;
+ }
+ if (jsobj[JSON_NAME] == JSON_TOPLACE) {
+ toPlaceJsonResolve(jsobj);
+ return;
+ }
+}
+
+void changejsondata::setDefaultValue()
+{
+ JsonData::setDefaultValue();
+ m_fromDateTime.clear();
+ m_toDateTime.clear();
+ m_toPlaceStr.clear();
+}
+
+void changejsondata::fromDatetimeJsonResolve(const QJsonObject &jsobj)
+{
+ setFromDateTime(suggestDatetimeResolve(jsobj));
+}
+
+void changejsondata::toDatetimeJsonResolve(const QJsonObject &jsobj)
+{
+ setToDateTime(suggestDatetimeResolve(jsobj));
+}
+
+void changejsondata::toPlaceJsonResolve(const QJsonObject &jsobj)
+{
+ setToPlaceStr(jsobj[JSON_VALUE].toString());
+}
+
+QString changejsondata::toPlaceStr() const
+{
+ return m_toPlaceStr;
+}
+
+void changejsondata::setToPlaceStr(const QString &toPlaceStr)
+{
+ m_toPlaceStr = toPlaceStr;
+}
+
+bool changejsondata::isVaild() const
+{
+ return this->m_toDateTime.suggestDatetime.size() ==0
+ && this->m_fromDateTime.suggestDatetime.size()==0 && this->toPlaceStr().isEmpty()
+ && JsonData::isVaild();
+}
+
+SemanticsDateTime changejsondata::toDateTime() const
+{
+ return m_toDateTime;
+}
+
+void changejsondata::setToDateTime(const SemanticsDateTime &toDateTime)
+{
+ m_toDateTime = toDateTime;
+}
+
+SemanticsDateTime changejsondata::fromDateTime() const
+{
+ return m_fromDateTime;
+}
+
+void changejsondata::setFromDateTime(const SemanticsDateTime &fromDateTime)
+{
+ m_fromDateTime = fromDateTime;
+}
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/src/data/changejsondata.h dde-calendar-5.7.0.23/schedule-plugin/src/data/changejsondata.h
--- dde-calendar-5.7.0.4/schedule-plugin/src/data/changejsondata.h 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/src/data/changejsondata.h 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,81 @@
+/*
+* Copyright (C) 2019 ~ 2020 Uniontech Software Technology Co.,Ltd.
+*
+* Author: uniontech
+*
+* Maintainer: uniontech
+*
+* This program is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published by
+* the Free Software Foundation, either version 3 of the License, or
+* any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program. If not, see .
+*/
+#ifndef CHANGEJSONDATA_H
+#define CHANGEJSONDATA_H
+
+#include "jsondata.h"
+
+class changejsondata : public JsonData
+{
+public:
+ changejsondata();
+ /**
+ * @brief fromDateTime 获取语义from时间数据
+ * @return 时间数据
+ */
+ SemanticsDateTime fromDateTime() const;
+ /**
+ * @brief setFromDateTime 设置语义from时间数据
+ * @param fromDateTime 时间数据
+ */
+ void setFromDateTime(const SemanticsDateTime &fromDateTime);
+ /**
+ * @brief toDateTime 获取语义toDateTime时间数据
+ * @return 时间数据
+ */
+ SemanticsDateTime toDateTime() const;
+ /**
+ * @brief setToDateTime 设置语义toDateTime时间数据
+ * @param toDateTime 时间数据
+ */
+ void setToDateTime(const SemanticsDateTime &toDateTime);
+
+ QString toPlaceStr() const;
+ void setToPlaceStr(const QString &toPlaceStr);
+ /**
+ * @brief isVaild 判断json是否为原始数据
+ * @return true为原始数据
+ */
+ bool isVaild() const override;
+
+private:
+ void jsonObjResolve(const QJsonObject &jsobj) override;
+ void setDefaultValue() override;
+ void fromDatetimeJsonResolve(const QJsonObject &jsobj);
+ void toDatetimeJsonResolve(const QJsonObject &jsobj);
+ void toPlaceJsonResolve(const QJsonObject &jsobj);
+
+private:
+ /**
+ * @brief m_fromDateTime 需要修改的时间信息
+ */
+ SemanticsDateTime m_fromDateTime {};
+ /**
+ * @brief m_toDateTime 修改到的时间信息
+ */
+ SemanticsDateTime m_toDateTime {};
+ /**
+ * @brief m_toPlaceStr 修改的日常内容
+ */
+ QString m_toPlaceStr {};
+};
+
+#endif // CHANGEJSONDATA_H
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/src/data/clocaldata.cpp dde-calendar-5.7.0.23/schedule-plugin/src/data/clocaldata.cpp
--- dde-calendar-5.7.0.4/schedule-plugin/src/data/clocaldata.cpp 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/src/data/clocaldata.cpp 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,97 @@
+/*
+* Copyright (C) 2019 ~ 2020 Uniontech Software Technology Co.,Ltd.
+*
+* Author: uniontech
+*
+* Maintainer: uniontech
+*
+* This program is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published by
+* the Free Software Foundation, either version 3 of the License, or
+* any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program. If not, see .
+*/
+#include "clocaldata.h"
+
+CLocalData::CLocalData()
+{
+}
+
+QVector CLocalData::scheduleInfoVector() const
+{
+ return m_scheduleInfoVector;
+}
+
+void CLocalData::setScheduleInfoVector(const QVector &scheduleInfoVector)
+{
+ m_scheduleInfoVector = scheduleInfoVector;
+}
+
+ScheduleDtailInfo CLocalData::SelectInfo() const
+{
+ return m_SelectInfo;
+}
+
+void CLocalData::setSelectInfo(const ScheduleDtailInfo &SelectInfo)
+{
+ m_SelectInfo = SelectInfo;
+}
+
+void CLocalData::setToTitleName(const QString &title)
+{
+ m_ToTitleName = title;
+}
+
+QString CLocalData::getToTitleName() const
+{
+ return m_ToTitleName;
+}
+
+void CLocalData::setToTime(const QVector &timeInfo)
+{
+ m_ToTime = timeInfo;
+}
+
+QVector CLocalData::getToTime() const
+{
+ return m_ToTime;
+}
+
+int CLocalData::getOffet() const
+{
+ return m_offset;
+}
+
+void CLocalData::setOffset(int offset)
+{
+ m_offset = offset;
+}
+
+CLocalData *CLocalData::getDataByPoint(const CLocalData *localData)
+{
+ if (this == localData || localData == nullptr)
+ return this;
+ this->m_offset = localData->m_offset;
+ this->m_SelectInfo = localData->m_SelectInfo;
+ this->m_ToTime = localData->m_ToTime;
+ this->m_scheduleInfoVector = localData->m_scheduleInfoVector;
+ this->m_ToTitleName = localData->m_ToTitleName;
+ return this;
+}
+
+void CLocalData::setNewInfo(const ScheduleDtailInfo &newInfo)
+{
+ m_NewInfo = newInfo;
+}
+
+ScheduleDtailInfo CLocalData::getNewInfo() const
+{
+ return m_NewInfo;
+}
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/src/data/clocaldata.h dde-calendar-5.7.0.23/schedule-plugin/src/data/clocaldata.h
--- dde-calendar-5.7.0.4/schedule-plugin/src/data/clocaldata.h 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/src/data/clocaldata.h 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,53 @@
+/*
+* Copyright (C) 2019 ~ 2020 Uniontech Software Technology Co.,Ltd.
+*
+* Author: uniontech
+*
+* Maintainer: uniontech
+*
+* This program is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published by
+* the Free Software Foundation, either version 3 of the License, or
+* any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program. If not, see .
+*/
+#ifndef CLOCALDATA_H
+#define CLOCALDATA_H
+
+#include "schedulestructs.h"
+#include "timedatastruct.h"
+class CLocalData
+{
+public:
+ CLocalData();
+ QVector scheduleInfoVector() const;
+ void setScheduleInfoVector(const QVector &scheduleInfoVector);
+ ScheduleDtailInfo SelectInfo() const;
+ void setSelectInfo(const ScheduleDtailInfo &SelectInfo);
+ void setToTitleName(const QString &title);
+ QString getToTitleName() const;
+ void setToTime(const QVector &timeInfo);
+ QVector getToTime() const;
+ int getOffet() const;
+ void setOffset(int offset);
+ CLocalData *getDataByPoint(const CLocalData *localData);
+ void setNewInfo(const ScheduleDtailInfo &newInfo);
+ ScheduleDtailInfo getNewInfo() const;
+
+private:
+ QVector m_scheduleInfoVector {};
+ ScheduleDtailInfo m_SelectInfo {};
+ ScheduleDtailInfo m_NewInfo {};
+ QString m_ToTitleName {""};
+ QVector m_ToTime {};
+ int m_offset {-1};
+};
+
+#endif // CLOCALDATA_H
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/src/data/createjsondata.cpp dde-calendar-5.7.0.23/schedule-plugin/src/data/createjsondata.cpp
--- dde-calendar-5.7.0.4/schedule-plugin/src/data/createjsondata.cpp 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/src/data/createjsondata.cpp 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,33 @@
+/*
+* Copyright (C) 2019 ~ 2020 Uniontech Software Technology Co.,Ltd.
+*
+* Author: uniontech
+*
+* Maintainer: uniontech
+*
+* This program is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published by
+* the Free Software Foundation, either version 3 of the License, or
+* any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program. If not, see .
+*/
+#include "createjsondata.h"
+
+#include
+#include
+#include
+#include
+
+#include "../globaldef.h"
+
+CreateJsonData::CreateJsonData()
+ : JsonData()
+{
+}
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/src/data/createjsondata.h dde-calendar-5.7.0.23/schedule-plugin/src/data/createjsondata.h
--- dde-calendar-5.7.0.4/schedule-plugin/src/data/createjsondata.h 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/src/data/createjsondata.h 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,34 @@
+/*
+* Copyright (C) 2019 ~ 2020 Uniontech Software Technology Co.,Ltd.
+*
+* Author: uniontech
+*
+* Maintainer: uniontech
+*
+* This program is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published by
+* the Free Software Foundation, either version 3 of the License, or
+* any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program. If not, see .
+*/
+#ifndef CREATEJSONDATA_H
+#define CREATEJSONDATA_H
+
+#include "jsondata.h"
+
+class CreateJsonData : public JsonData
+{
+public:
+ CreateJsonData();
+
+private:
+};
+
+#endif // CREATEJSONDATA_H
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/src/data/jsondata.cpp dde-calendar-5.7.0.23/schedule-plugin/src/data/jsondata.cpp
--- dde-calendar-5.7.0.4/schedule-plugin/src/data/jsondata.cpp 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/src/data/jsondata.cpp 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,336 @@
+/*
+* Copyright (C) 2019 ~ 2020 Uniontech Software Technology Co.,Ltd.
+*
+* Author: uniontech
+*
+* Maintainer: uniontech
+*
+* This program is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published by
+* the Free Software Foundation, either version 3 of the License, or
+* any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program. If not, see .
+*/
+#include "jsondata.h"
+
+#include
+#include
+#include
+#include
+
+#include "../globaldef.h"
+
+JsonData::JsonData()
+{
+}
+
+JsonData::~JsonData()
+{
+}
+
+void JsonData::JosnResolve(const QJsonObject &jsObj)
+{
+ setDefaultValue();
+ if (jsObj.contains("slots") && jsObj["slots"].isArray()) {
+ auto slotsObjArr = jsObj["slots"].toArray();
+ for (int j = 0; j < slotsObjArr.size(); ++j) {
+ auto slotsObj = slotsObjArr[j].toObject();
+ if (slotsObj.contains(JSON_NAME) && slotsObj[JSON_NAME].isString()) {
+ if (slotsObj[JSON_NAME] == JSON_CONTENT) {
+ contentJsonResolve(slotsObj);
+ continue;
+ }
+ if (slotsObj[JSON_NAME] == JSON_REPEAT) {
+ repeatJsonResolve(slotsObj);
+ continue;
+ }
+ if (slotsObj[JSON_NAME] == JSON_DATETIME) {
+ datetimeJsonResolve(slotsObj);
+ continue;
+ }
+ if (slotsObj[JSON_NAME] == JSON_PROPERTY) {
+ propertyJsonResolve(slotsObj);
+ continue;
+ }
+ if (slotsObj[JSON_NAME] == JSON_POSRANK_OFFSET) {
+ posRankOffsetResolve(slotsObj);
+ continue;
+ }
+ jsonObjResolve(slotsObj);
+ }
+ }
+ }
+}
+
+QString JsonData::SuggestMsg() const
+{
+ return m_SuggestMsg;
+}
+
+void JsonData::setSuggestMsg(const QString &SuggestMsg)
+{
+ m_SuggestMsg = SuggestMsg;
+}
+
+bool JsonData::ShouldEndSession() const
+{
+ return m_ShouldEndSession;
+}
+
+void JsonData::setShouldEndSession(bool ShouldEndSession)
+{
+ m_ShouldEndSession = ShouldEndSession;
+}
+
+void JsonData::setRepeatStatus(const JsonData::RepeatStatus &RepeatStatus)
+{
+ m_RepeatStatus = RepeatStatus;
+}
+
+QString JsonData::TitleName() const
+{
+ return m_TitleName;
+}
+
+void JsonData::setTitleName(const QString &TitleName)
+{
+ m_TitleName = TitleName;
+}
+
+void JsonData::setDateTimeStatus(const JsonData::DateTimeStatus &DateTimeStatus)
+{
+ m_DateTimeStatus = DateTimeStatus;
+}
+
+JsonData::RepeatStatus JsonData::getRepeatStatus() const
+{
+ return m_RepeatStatus;
+}
+
+QVector JsonData::getRepeatNum() const
+{
+ return m_RepeatNum;
+}
+
+void JsonData::setRepeatNum(const QVector &RepeatNum)
+{
+ m_RepeatNum = RepeatNum;
+}
+
+SemanticsDateTime JsonData::getDateTime() const
+{
+ return m_DateTime;
+}
+
+void JsonData::setDateTime(const SemanticsDateTime &DateTime)
+{
+ m_DateTime = DateTime;
+}
+
+void JsonData::contentJsonResolve(const QJsonObject &jsobj)
+{
+ setTitleName(jsobj[JSON_VALUE].toString());
+}
+
+void JsonData::repeatJsonResolve(const QJsonObject &jsobj)
+{
+ QString repeatValue = jsobj[JSON_VALUE].toString();
+ if (repeatValue.contains("EVERYEAR")) {
+ setRepeatStatus(EVEY);
+ return;
+ }
+ if (repeatValue.contains("EVERYDAY")) {
+ setRepeatStatus(EVED);
+ return;
+ }
+ if (repeatValue.contains("WORKDAY")) {
+ setRepeatStatus(WORKD);
+ return;
+ }
+ if (repeatValue.contains("RESTDAY")) {
+ setRepeatStatus(RESTD);
+ return;
+ }
+ if (repeatValue.contains("WEEKEND")) {
+ setRepeatStatus(RESTD);
+ return;
+ }
+
+ QRegExp rxlen("([W,M])([0-9]{0,2})");
+ int pos = 0;
+ QVector repeatnum {};
+ repeatnum.clear();
+ while ((pos = rxlen.indexIn(repeatValue, pos)) != -1) {
+ if (rxlen.cap(1).contains("M")) {
+ setRepeatStatus(EVEM);
+ }
+ if (rxlen.cap(1).contains("W")) {
+ setRepeatStatus(EVEW);
+ }
+ if (rxlen.cap(0).size() > 0 && rxlen.cap(2) != "") {
+ repeatnum.append(rxlen.cap(2).toInt());
+ }
+ pos += rxlen.matchedLength();
+ }
+ setRepeatNum(repeatnum);
+}
+
+void JsonData::datetimeJsonResolve(const QJsonObject &jsobj)
+{
+ setDateTime(suggestDatetimeResolve(jsobj));
+}
+
+void JsonData::propertyJsonResolve(const QJsonObject &jsobj)
+{
+ QString propertyValue = jsobj[JSON_VALUE].toString();
+ if (propertyValue == JSON_NEXT) {
+ setPropertyStatus(NEXT);
+ return;
+ }
+ if (propertyValue == JSON_LAST) {
+ setPropertyStatus(LAST);
+ return;
+ }
+ if (propertyValue == JSON_ALL) {
+ setPropertyStatus(ALL);
+ return;
+ }
+ if (propertyValue == JSON_THIS) {
+ setPropertyStatus(PRO_THIS);
+ return;
+ }
+}
+
+void JsonData::posRankOffsetResolve(const QJsonObject &jsobj)
+{
+ setOffset(jsobj[JSON_VALUE].toString().toInt());
+}
+
+SemanticsDateTime JsonData::suggestDatetimeResolve(const QJsonObject &jsobj)
+{
+ SemanticsDateTime semdatetime {};
+ semdatetime.clear();
+ QString DateTimeJson = jsobj[JSON_NORMVALUE].toString();
+ QJsonParseError jsonError;
+ QJsonDocument doc = QJsonDocument::fromJson(DateTimeJson.toUtf8(), &jsonError);
+ //建议时间
+ QString sugdateTimeStr{""};
+ //模糊时间
+ QString dateTimeStr{""};
+
+ if (!doc.isNull() && (jsonError.error == QJsonParseError::NoError)) {
+ auto rootObject = doc.object();
+ sugdateTimeStr = (rootObject["suggestDatetime"].toString());
+ dateTimeStr = rootObject["datetime"].toString();
+ }
+ //建议时间解析赋值
+ if (sugdateTimeStr != "") {
+ if (sugdateTimeStr.contains("/")) {
+ QStringList dateTimeList = sugdateTimeStr.split("/");
+ for (int i = 0; i < dateTimeList.size(); ++i) {
+ //如果数据不为空,添加解析数据
+ if(!dateTimeList.at(i).isEmpty()){
+ semdatetime.suggestDatetime.append(resolveNormValue(dateTimeList.at(i)));
+ }
+ }
+ } else {
+ semdatetime.suggestDatetime.append(resolveNormValue(sugdateTimeStr));
+ }
+ }
+ //模糊时间解析赋值
+ if(!dateTimeStr.isEmpty()){
+ if(dateTimeStr.contains("/")){
+ QStringList dateTimeList = dateTimeStr.split("/");
+ for (int i = 0; i < dateTimeList.size(); ++i) {
+ //如果数据不为空,添加解析数据
+ if(!dateTimeList.at(i).isEmpty()){
+ semdatetime.dateTime.append(resolveDateTimeValeu(dateTimeList.at(i)));
+ }
+ }
+ } else {
+ semdatetime.dateTime.append(resolveDateTimeValeu(dateTimeStr));
+ }
+ }
+ return semdatetime;
+}
+
+SuggestDatetimeInfo JsonData::resolveNormValue(const QString &str)
+{
+ SuggestDatetimeInfo datetimeInfo;
+ datetimeInfo.hasTime = str.contains(JSON_DATETIME_DELIMITER);
+ datetimeInfo.datetime = QDateTime::fromString(str, Qt::ISODate);
+ return datetimeInfo;
+}
+
+DateTimeInfo JsonData::resolveDateTimeValeu(const QString &dateTimeStr)
+{
+ DateTimeInfo dateTimeInfo{};
+ //根据关键符合“T”分割字符
+ QStringList dateList = dateTimeStr.split(JSON_DATETIME_DELIMITER);
+ //如果只有一个表示没有时间信息
+ if(dateList.size() ==1){
+ dateTimeInfo.m_Date = QDate::fromString(dateList.at(0),DATEFORMAT);
+ dateTimeInfo.hasDate = true;
+ dateTimeInfo.hasTime = false;
+ }else if (dateList.size()>1) {
+ //如果第一个数据为空表示没有日期信息
+ if(dateList.at(0).isEmpty()){
+ dateTimeInfo.hasDate = false;
+ }else {
+ dateTimeInfo.m_Date = QDate::fromString(dateList.at(0),DATEFORMAT);
+ dateTimeInfo.hasDate = true;
+ }
+ dateTimeInfo.m_Time = QTime::fromString(dateList.at(1),TIMEFORMAT);
+ dateTimeInfo.hasTime = true;
+ }
+ return dateTimeInfo;
+}
+
+void JsonData::setDefaultValue()
+{
+ setTitleName("");
+ setDateTimeStatus(NODATE);
+ setRepeatStatus(NONE);
+ setPropertyStatus(PRO_NONE);
+ m_RepeatNum.clear();
+ m_DateTime.clear();
+ setOffset(-1);
+}
+
+void JsonData::jsonObjResolve(const QJsonObject &jsobj)
+{
+ Q_UNUSED(jsobj);
+}
+
+JsonData::PropertyStatus JsonData::getPropertyStatus() const
+{
+ return m_propertyStatus;
+}
+
+void JsonData::setPropertyStatus(const PropertyStatus &propertyStatus)
+{
+ m_propertyStatus = propertyStatus;
+}
+
+int JsonData::offset() const
+{
+ return m_offset;
+}
+
+void JsonData::setOffset(int offset)
+{
+ m_offset = offset;
+}
+
+bool JsonData::isVaild() const
+{
+ return TitleName() == "" && getDateTime().suggestDatetime.size() == 0
+ && m_offset == -1 && m_RepeatStatus == NONE && m_propertyStatus == PRO_NONE;
+}
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/src/data/jsondata.h dde-calendar-5.7.0.23/schedule-plugin/src/data/jsondata.h
--- dde-calendar-5.7.0.4/schedule-plugin/src/data/jsondata.h 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/src/data/jsondata.h 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,129 @@
+/*
+* Copyright (C) 2019 ~ 2020 Uniontech Software Technology Co.,Ltd.
+*
+* Author: uniontech
+*
+* Maintainer: uniontech
+*
+* This program is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published by
+* the Free Software Foundation, either version 3 of the License, or
+* any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program. If not, see .
+*/
+#ifndef JSONDATA_H
+#define JSONDATA_H
+
+#include
+#include
+#include "timedatastruct.h"
+class QJsonObject;
+class JsonData
+{
+public:
+ enum RepeatStatus { NONE,
+ EVED,
+ EVEW,
+ EVEM,
+ EVEY,
+ WORKD,
+ RESTD
+ };
+ enum DateTimeStatus { NODATE,
+ NOTIME,
+ ALLHAS
+ };
+ enum PropertyStatus { PRO_NONE,
+ NEXT,
+ LAST,
+ ALL,
+ PRO_THIS
+ };
+
+public:
+ JsonData();
+ virtual ~JsonData();
+ void JosnResolve(const QJsonObject &jsObj);
+ QString SuggestMsg() const;
+ void setSuggestMsg(const QString &SuggestMsg);
+
+ bool ShouldEndSession() const;
+ void setShouldEndSession(bool ShouldEndSession);
+
+ void setRepeatStatus(const RepeatStatus &RepeatStatus);
+
+ QString TitleName() const;
+ void setTitleName(const QString &TitleName);
+
+ void setDateTimeStatus(const DateTimeStatus &DateTimeStatus);
+
+ RepeatStatus getRepeatStatus() const;
+
+ QVector getRepeatNum() const;
+ void setRepeatNum(const QVector &RepeatNum);
+
+ SemanticsDateTime getDateTime() const;
+ void setDateTime(const SemanticsDateTime &DateTime);
+
+ PropertyStatus getPropertyStatus() const;
+ void setPropertyStatus(const PropertyStatus &propertyStatus);
+
+ int offset() const;
+ void setOffset(int offset);
+
+ /**
+ * @brief isVaild 判断json是否为原始数据
+ * @return true为原始数据
+ */
+ virtual bool isVaild() const;
+
+protected:
+ void contentJsonResolve(const QJsonObject &jsobj);
+ void repeatJsonResolve(const QJsonObject &jsobj);
+ /**
+ * @brief datetimeJsonResolve 时间关键字解析
+ * @param jsobj json对象
+ */
+ void datetimeJsonResolve(const QJsonObject &jsobj);
+ void propertyJsonResolve(const QJsonObject &jsobj);
+ /**
+ * @brief posRankOffsetResolve 偏移关键字解析
+ * @param jsobj json对象
+ */
+ void posRankOffsetResolve(const QJsonObject &jsobj);
+ SemanticsDateTime suggestDatetimeResolve(const QJsonObject &jsobj);
+ /**
+ * @brief resolveNormValue 解析建议时间数据
+ * @param str string格式的建议时间
+ * @return 建议时间
+ */
+ SuggestDatetimeInfo resolveNormValue(const QString &str);
+ /**
+ * @brief resolveDateTimeValeu 解析模糊时间数据
+ * @param dateTimeStr string格式的模糊时间
+ * @return 模糊时间
+ */
+ DateTimeInfo resolveDateTimeValeu(const QString &dateTimeStr);
+ virtual void setDefaultValue();
+ virtual void jsonObjResolve(const QJsonObject &jsobj);
+
+private:
+ QString m_SuggestMsg {""};
+ bool m_ShouldEndSession {false};
+ RepeatStatus m_RepeatStatus {NONE};
+ QVector m_RepeatNum {};
+ DateTimeStatus m_DateTimeStatus {NODATE};
+ PropertyStatus m_propertyStatus {PRO_NONE};
+ QString m_TitleName {""};
+ SemanticsDateTime m_DateTime {};
+ int m_offset {-1};
+};
+
+#endif // JSONDATA_H
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/src/data/queryjsondata.cpp dde-calendar-5.7.0.23/schedule-plugin/src/data/queryjsondata.cpp
--- dde-calendar-5.7.0.4/schedule-plugin/src/data/queryjsondata.cpp 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/src/data/queryjsondata.cpp 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,33 @@
+/*
+* Copyright (C) 2019 ~ 2020 Uniontech Software Technology Co.,Ltd.
+*
+* Author: uniontech
+*
+* Maintainer: uniontech
+*
+* This program is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published by
+* the Free Software Foundation, either version 3 of the License, or
+* any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program. If not, see .
+*/
+#include "queryjsondata.h"
+
+#include
+#include
+#include
+#include
+
+#include "../globaldef.h"
+
+QueryJsonData::QueryJsonData()
+ : JsonData()
+{
+}
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/src/data/queryjsondata.h dde-calendar-5.7.0.23/schedule-plugin/src/data/queryjsondata.h
--- dde-calendar-5.7.0.4/schedule-plugin/src/data/queryjsondata.h 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/src/data/queryjsondata.h 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,32 @@
+/*
+* Copyright (C) 2019 ~ 2020 Uniontech Software Technology Co.,Ltd.
+*
+* Author: uniontech
+*
+* Maintainer: uniontech
+*
+* This program is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published by
+* the Free Software Foundation, either version 3 of the License, or
+* any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program. If not, see .
+*/
+#ifndef QUERYJSONDATA_H
+#define QUERYJSONDATA_H
+
+#include "jsondata.h"
+
+class QueryJsonData : public JsonData
+{
+public:
+ QueryJsonData();
+};
+
+#endif // QUERYJSONDATA_H
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/src/data/schedulecolourmanage.cpp dde-calendar-5.7.0.23/schedule-plugin/src/data/schedulecolourmanage.cpp
--- dde-calendar-5.7.0.4/schedule-plugin/src/data/schedulecolourmanage.cpp 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/src/data/schedulecolourmanage.cpp 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,401 @@
+/*
+* Copyright (C) 2019 ~ 2020 Uniontech Software Technology Co.,Ltd.
+*
+* Author: uniontech
+*
+* Maintainer: uniontech
+*
+* This program is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published by
+* the Free Software Foundation, either version 3 of the License, or
+* any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program. If not, see .
+*/
+#include "schedulecolourmanage.h"
+
+ScheduleColourManage::ScheduleColourManage()
+ : m_LifeScheduleColour(new CSchedulesColor())
+ , m_WorkScheduleColour(new CSchedulesColor())
+ , m_OtherScheduleColour(new CSchedulesColor())
+ , m_SolarScheduleColour(new CSchedulesColor())
+{
+}
+
+ScheduleColourManage::~ScheduleColourManage()
+{
+ delete m_LifeScheduleColour;
+ m_LifeScheduleColour = nullptr;
+ delete m_WorkScheduleColour;
+ m_WorkScheduleColour = nullptr;
+ delete m_OtherScheduleColour;
+ m_OtherScheduleColour = nullptr;
+ delete m_SolarScheduleColour;
+ m_SolarScheduleColour = nullptr;
+}
+
+void ScheduleColourManage::setTheMe(int type)
+{
+ setLifeScheduleTheme(type);
+ setOtherScheduleTheme(type);
+ setWorkScheduleTheme(type);
+ setSolarScheduleTheme(type);
+}
+
+CSchedulesColor ScheduleColourManage::getColorByTypeId(const int &id)
+{
+ //1工作 2 生活 3其他
+ CSchedulesColor color;
+ switch (id) {
+ case 1:
+ color = WorkScheduleColour();
+ break;
+ case 2:
+ color = LifeScheduleColour();
+ break;
+ case 3:
+ color = OtherScheduleColour();
+ break;
+ case 4:
+ color = SolarScheduleColour();
+ break;
+ default:
+ color = OtherScheduleColour();
+ break;
+ }
+ return color;
+}
+
+CSchedulesColor ScheduleColourManage::LifeScheduleColour() const
+{
+ return *m_LifeScheduleColour;
+}
+
+CSchedulesColor ScheduleColourManage::WorkScheduleColour() const
+{
+ return *m_WorkScheduleColour;
+}
+
+CSchedulesColor ScheduleColourManage::OtherScheduleColour() const
+{
+ return *m_OtherScheduleColour;
+}
+
+CSchedulesColor ScheduleColourManage::SolarScheduleColour() const
+{
+ return *m_SolarScheduleColour;
+}
+
+void ScheduleColourManage::setLifeScheduleTheme(int type)
+{
+ if (type == 0 || type == 1) {
+ m_LifeScheduleColour->type = 2;
+ m_LifeScheduleColour->dotColor = "#82D245";
+ m_LifeScheduleColour->dotColor.setAlphaF(1);
+ m_LifeScheduleColour->gradientFromC = "#B7E6FB";
+ m_LifeScheduleColour->gradientFromC.setAlphaF(0.7);
+ m_LifeScheduleColour->gradientToC = "#D4FFB3";
+ m_LifeScheduleColour->gradientToC.setAlphaF(0.7);
+ m_LifeScheduleColour->Purecolor = "#6FFF00";
+ m_LifeScheduleColour->Purecolor.setAlphaF(0.2);
+ m_LifeScheduleColour->shadowcolor = "#82D245";
+ m_LifeScheduleColour->textColor = "#000000";
+ m_LifeScheduleColour->timeColor = "#53A316";
+ m_LifeScheduleColour->hightlightgradientFromC = "#9AE5FF";
+ m_LifeScheduleColour->hightlightgradientToC = "#C7FF94";
+ QColor lifeP("#C7FF94");
+ //lifeP.setAlphaF(0.8);
+ m_LifeScheduleColour->hightlightPurecolor = lifeP;
+
+ m_LifeScheduleColour->hovergradientFromC = "#A8E9FF";
+ m_LifeScheduleColour->hovergradientToC = "#D5FFAF";
+ m_LifeScheduleColour->hovergradientFromC.setAlphaF(0.95);
+ m_LifeScheduleColour->hovergradientToC.setAlphaF(0.95);
+ QColor lifehP("#C4FF98");
+ lifehP.setAlphaF(0.8);
+ m_LifeScheduleColour->hoverPurecolor = lifehP;
+ m_LifeScheduleColour->splitColor = "#82D245";
+ m_LifeScheduleColour->pressgradientToC = m_LifeScheduleColour->gradientToC;
+ m_LifeScheduleColour->pressgradientFromC = m_LifeScheduleColour->gradientFromC;
+ m_LifeScheduleColour->pressPurecolor = m_LifeScheduleColour->Purecolor;
+ m_LifeScheduleColour->pressgradientToC.setAlphaF(0.8);
+ m_LifeScheduleColour->pressgradientFromC.setAlphaF(0.8);
+ m_LifeScheduleColour->pressPurecolor.setAlphaF(0.2);
+
+ } else {
+ m_LifeScheduleColour->type = 2;
+ m_LifeScheduleColour->dotColor = "#59F88D";
+ m_LifeScheduleColour->dotColor.setAlphaF(0.5);
+ m_LifeScheduleColour->gradientFromC = "#2D6883";
+ m_LifeScheduleColour->gradientToC = "#5D7D44";
+ m_LifeScheduleColour->gradientToC.setAlphaF(0.5);
+ m_LifeScheduleColour->gradientFromC.setAlphaF(0.5);
+ m_LifeScheduleColour->Purecolor = "#59F88D";
+ m_LifeScheduleColour->Purecolor.setAlphaF(0.1);
+ m_LifeScheduleColour->shadowcolor = "#25FA6B";
+ m_LifeScheduleColour->shadowcolor.setAlphaF(0.5);
+ m_LifeScheduleColour->textColor = "#C0C6D4";
+ // m_LifeScheduleColour->textColor.setAlphaF(1);
+ m_LifeScheduleColour->timeColor = "#38A35B";
+ m_LifeScheduleColour->hightlightgradientFromC = "#2D6883";
+ m_LifeScheduleColour->hightlightgradientFromC.setAlphaF(0.8);
+ m_LifeScheduleColour->hightlightgradientToC = "#5D7D44";
+ m_LifeScheduleColour->hightlightgradientToC.setAlphaF(0.8);
+ QColor lifeP("#337044");
+ lifeP.setAlphaF(0.8);
+ m_LifeScheduleColour->hightlightPurecolor = lifeP;
+ m_LifeScheduleColour->splitColor = "#25FA6B";
+ m_LifeScheduleColour->splitColor.setAlphaF(0.3);
+ m_LifeScheduleColour->hovergradientFromC = "#2D6883";
+ m_LifeScheduleColour->hovergradientToC = "#5D7D44";
+ m_LifeScheduleColour->hovergradientFromC.setAlphaF(0.65);
+ m_LifeScheduleColour->hovergradientToC.setAlphaF(0.65);
+ QColor lifehP("#59F88D");
+ lifehP.setAlphaF(0.2);
+ m_LifeScheduleColour->hoverPurecolor = lifehP;
+ m_LifeScheduleColour->pressgradientToC = m_LifeScheduleColour->gradientToC;
+ m_LifeScheduleColour->pressgradientFromC = m_LifeScheduleColour->gradientFromC;
+ m_LifeScheduleColour->pressPurecolor = m_LifeScheduleColour->Purecolor;
+ m_LifeScheduleColour->pressgradientToC.setAlphaF(0.4);
+ m_LifeScheduleColour->pressgradientFromC.setAlphaF(0.4);
+ m_LifeScheduleColour->pressPurecolor.setAlphaF(0.15);
+ }
+}
+
+void ScheduleColourManage::setWorkScheduleTheme(int type)
+{
+ if (type == 0 || type == 1) {
+ m_WorkScheduleColour->type = 1;
+ m_WorkScheduleColour->dotColor = "#FB2525";
+ m_WorkScheduleColour->dotColor.setAlphaF(0.5);
+ m_WorkScheduleColour->gradientFromC = "#FBCEB7";
+ m_WorkScheduleColour->gradientFromC.setAlphaF(0.7);
+ m_WorkScheduleColour->gradientToC = "#FA9D9A";
+ m_WorkScheduleColour->gradientToC.setAlphaF(0.7);
+ m_WorkScheduleColour->Purecolor = "#F85566";
+ m_WorkScheduleColour->Purecolor.setAlphaF(0.2);
+ m_WorkScheduleColour->shadowcolor = "#FB2525";
+ m_WorkScheduleColour->shadowcolor.setAlphaF(0.5);
+ m_WorkScheduleColour->textColor = "#000000";
+ m_WorkScheduleColour->timeColor = "#B54A4B";
+ m_WorkScheduleColour->hightlightgradientFromC = "#FFD0B8";
+ m_WorkScheduleColour->hightlightgradientToC = "#FF908D";
+ QColor workP("#F9AEB8");
+ //workP.setAlphaF(0.8);
+ m_WorkScheduleColour->hightlightPurecolor = workP;
+ m_WorkScheduleColour->splitColor = "#FB2525";
+ m_WorkScheduleColour->splitColor.setAlphaF(0.5);
+
+ m_WorkScheduleColour->hovergradientFromC = "#FFD0B8";
+ m_WorkScheduleColour->hovergradientFromC.setAlphaF(0.95);
+ m_WorkScheduleColour->hovergradientToC = "#FF9D9A";
+ m_WorkScheduleColour->hovergradientToC.setAlphaF(0.95);
+ QColor workhP("#FFB6BD");
+ workhP.setAlphaF(0.8);
+ m_WorkScheduleColour->hoverPurecolor = workhP;
+
+ m_WorkScheduleColour->pressgradientToC = m_WorkScheduleColour->gradientToC;
+ m_WorkScheduleColour->pressgradientFromC = m_WorkScheduleColour->gradientFromC;
+ m_WorkScheduleColour->pressPurecolor = m_WorkScheduleColour->Purecolor;
+ m_WorkScheduleColour->pressgradientToC.setAlphaF(0.8);
+ m_WorkScheduleColour->pressgradientFromC.setAlphaF(0.8);
+ m_WorkScheduleColour->pressPurecolor.setAlphaF(0.2);
+
+ } else {
+ m_WorkScheduleColour->type = 1;
+ m_WorkScheduleColour->dotColor = "#F85566";
+ m_WorkScheduleColour->dotColor.setAlphaF(0.5);
+ m_WorkScheduleColour->gradientFromC = "#965A26";
+ m_WorkScheduleColour->gradientToC = "#8B2521";
+ m_WorkScheduleColour->gradientToC.setAlphaF(0.5);
+ m_WorkScheduleColour->gradientFromC.setAlphaF(0.5);
+ m_WorkScheduleColour->Purecolor = "#F85566";
+ m_WorkScheduleColour->Purecolor.setAlphaF(0.1);
+ m_WorkScheduleColour->shadowcolor = "#FB2525";
+ m_WorkScheduleColour->shadowcolor.setAlphaF(0.5);
+ m_WorkScheduleColour->textColor = "#C0C6D4";
+ // m_WorkScheduleColour->textColor.setAlphaF(1);
+ m_WorkScheduleColour->timeColor = "#B54A4B";
+ m_WorkScheduleColour->hightlightgradientToC = "#992D2A";
+ m_WorkScheduleColour->hightlightgradientToC.setAlphaF(0.8);
+ m_WorkScheduleColour->hightlightgradientFromC = "#8B521F";
+ m_WorkScheduleColour->hightlightgradientFromC.setAlphaF(0.8);
+ QColor workP("#77373E");
+ workP.setAlphaF(0.8);
+ m_WorkScheduleColour->hightlightPurecolor = workP;
+
+ m_WorkScheduleColour->hovergradientFromC = "#965A26";
+ m_WorkScheduleColour->hovergradientToC = "#8B2521";
+ m_WorkScheduleColour->hovergradientFromC.setAlphaF(0.65);
+ m_WorkScheduleColour->hovergradientToC.setAlphaF(0.65);
+ QColor workhP("#F85566");
+ workhP.setAlphaF(0.2);
+ m_WorkScheduleColour->hoverPurecolor = workhP;
+ m_WorkScheduleColour->splitColor = "#F85566";
+ m_WorkScheduleColour->splitColor.setAlphaF(0.5);
+ m_WorkScheduleColour->pressgradientToC = m_WorkScheduleColour->gradientToC;
+ m_WorkScheduleColour->pressgradientFromC = m_WorkScheduleColour->gradientFromC;
+ m_WorkScheduleColour->pressPurecolor = m_WorkScheduleColour->Purecolor;
+ m_WorkScheduleColour->pressgradientToC.setAlphaF(0.4);
+ m_WorkScheduleColour->pressgradientFromC.setAlphaF(0.4);
+ m_WorkScheduleColour->pressPurecolor.setAlphaF(0.15);
+ }
+}
+
+void ScheduleColourManage::setOtherScheduleTheme(int type)
+{
+ if (type == 0 || type == 1) {
+ m_OtherScheduleColour->type = 3;
+ m_OtherScheduleColour->dotColor = "#BA60FA";
+ m_OtherScheduleColour->dotColor.setAlphaF(1);
+ m_OtherScheduleColour->gradientFromC = "#FBE9B7";
+ m_OtherScheduleColour->gradientFromC.setAlphaF(0.7);
+ m_OtherScheduleColour->gradientToC = "#DFB3FF";
+ m_OtherScheduleColour->gradientToC.setAlphaF(0.7);
+ m_OtherScheduleColour->Purecolor = "#D191FF";
+ m_OtherScheduleColour->Purecolor.setAlphaF(0.2);
+ m_OtherScheduleColour->shadowcolor = "#BA60FA";
+ m_OtherScheduleColour->textColor = "#000000";
+ m_OtherScheduleColour->timeColor = "#8548B1";
+ m_OtherScheduleColour->hightlightgradientFromC = "#FFE8AC";
+ m_OtherScheduleColour->hightlightgradientToC = "#FBA5FF";
+ QColor otherP("#EAC4FF");
+ //otherP.setAlphaF(0.8);
+ m_OtherScheduleColour->hightlightPurecolor = otherP;
+
+ m_OtherScheduleColour->hovergradientFromC = "#FFE8AC";
+ m_OtherScheduleColour->hovergradientToC = "#E2A5FF";
+ m_OtherScheduleColour->hovergradientFromC.setAlphaF(0.95);
+ m_OtherScheduleColour->hovergradientToC.setAlphaF(0.95);
+ QColor otherhP("#E6C5FF");
+ otherhP.setAlphaF(0.8);
+ m_OtherScheduleColour->hoverPurecolor = otherhP;
+ m_OtherScheduleColour->splitColor = "#BA60FA";
+ m_OtherScheduleColour->pressgradientToC = m_OtherScheduleColour->gradientToC;
+ m_OtherScheduleColour->pressgradientFromC = m_OtherScheduleColour->gradientFromC;
+ m_OtherScheduleColour->pressPurecolor = m_OtherScheduleColour->Purecolor;
+ m_OtherScheduleColour->pressgradientToC.setAlphaF(0.8);
+ m_OtherScheduleColour->pressgradientFromC.setAlphaF(0.8);
+ m_OtherScheduleColour->pressPurecolor.setAlphaF(0.2);
+ } else {
+ m_OtherScheduleColour->type = 3;
+ m_OtherScheduleColour->dotColor = "#C155F8";
+ m_OtherScheduleColour->dotColor.setAlphaF(0.7);
+ m_OtherScheduleColour->gradientFromC = "#8C4E2C";
+ m_OtherScheduleColour->gradientToC = "#7D37AF";
+ m_OtherScheduleColour->gradientToC.setAlphaF(0.5);
+ m_OtherScheduleColour->gradientFromC.setAlphaF(0.5);
+ m_OtherScheduleColour->Purecolor = "#C155F8";
+ m_OtherScheduleColour->Purecolor.setAlphaF(0.1);
+ m_OtherScheduleColour->shadowcolor = "#BE3DFF";
+ m_OtherScheduleColour->shadowcolor.setAlphaF(0.5);
+ m_OtherScheduleColour->textColor = "#C0C6D4";
+ // m_OtherScheduleColour->textColor.setAlphaF(1);
+ m_OtherScheduleColour->timeColor = "#9857C8";
+ m_OtherScheduleColour->hightlightgradientFromC = "#8C4E2C";
+ m_OtherScheduleColour->hightlightgradientFromC.setAlphaF(0.8);
+ m_OtherScheduleColour->hightlightgradientToC = "#803BAE";
+ m_OtherScheduleColour->hightlightgradientToC.setAlphaF(0.8);
+ QColor otherP("#613776");
+ otherP.setAlphaF(0.8);
+ m_OtherScheduleColour->hightlightPurecolor = otherP;
+
+ m_OtherScheduleColour->hovergradientFromC = "#8C4E2C";
+ m_OtherScheduleColour->hovergradientToC = "#7D37AF";
+ m_OtherScheduleColour->hovergradientFromC.setAlphaF(0.65);
+ m_OtherScheduleColour->hovergradientToC.setAlphaF(0.65);
+ QColor otherhP("#C155F8");
+ otherhP.setAlphaF(0.2);
+ m_OtherScheduleColour->hoverPurecolor = otherhP;
+ m_OtherScheduleColour->splitColor = "#BA32FF";
+ m_OtherScheduleColour->splitColor.setAlphaF(0.5);
+ m_OtherScheduleColour->pressgradientToC = m_OtherScheduleColour->gradientToC;
+ m_OtherScheduleColour->pressgradientFromC = m_OtherScheduleColour->gradientFromC;
+ m_OtherScheduleColour->pressPurecolor = m_OtherScheduleColour->Purecolor;
+ m_OtherScheduleColour->pressgradientToC.setAlphaF(0.4);
+ m_OtherScheduleColour->pressgradientFromC.setAlphaF(0.4);
+ m_OtherScheduleColour->pressPurecolor.setAlphaF(0.15);
+ }
+}
+
+void ScheduleColourManage::setSolarScheduleTheme(int type)
+{
+ if (type == 0 || type == 1) {
+ m_SolarScheduleColour->type = 4;
+ m_SolarScheduleColour->dotColor = "#FF7272";
+ m_SolarScheduleColour->dotColor.setAlphaF(1);
+ m_SolarScheduleColour->gradientFromC = "#FF7272";
+ m_SolarScheduleColour->gradientFromC.setAlphaF(0.3);
+ m_SolarScheduleColour->gradientToC = "#FF7272";
+ m_SolarScheduleColour->gradientToC.setAlphaF(0.3);
+ m_SolarScheduleColour->Purecolor = "#FF7272";
+ m_SolarScheduleColour->Purecolor.setAlphaF(0.3);
+ m_SolarScheduleColour->shadowcolor = "#BA60FA";
+ m_SolarScheduleColour->textColor = "#000000";
+ m_SolarScheduleColour->timeColor = "#8548B1";
+ m_SolarScheduleColour->hightlightgradientFromC = "#F9AAAA";
+ m_SolarScheduleColour->hightlightgradientFromC.setAlphaF(1);
+ m_SolarScheduleColour->hightlightgradientToC = "#F9AAAA";
+ m_SolarScheduleColour->hightlightgradientToC.setAlphaF(1);
+ m_SolarScheduleColour->hightlightPurecolor = "#F9AAAA";
+ m_SolarScheduleColour->hightlightPurecolor.setAlphaF(1);
+
+ m_SolarScheduleColour->hovergradientFromC = "#FFB0B1";
+ m_SolarScheduleColour->hovergradientToC = "#FFB0B1";
+ m_SolarScheduleColour->hovergradientFromC.setAlphaF(0.95);
+ m_SolarScheduleColour->hovergradientToC.setAlphaF(0.95);
+ m_SolarScheduleColour->hoverPurecolor = "#FF7272";
+ m_SolarScheduleColour->splitColor = "#FF7272";
+ m_SolarScheduleColour->pressgradientFromC = "#FF7272";
+ m_SolarScheduleColour->pressgradientFromC.setAlphaF(0.3);
+ m_SolarScheduleColour->pressgradientToC = "#FF7272";
+ m_SolarScheduleColour->pressgradientToC.setAlphaF(0.3);
+
+ m_SolarScheduleColour->pressPurecolor = m_SolarScheduleColour->Purecolor;
+ m_SolarScheduleColour->pressgradientToC.setAlphaF(0.4);
+ m_SolarScheduleColour->pressgradientFromC.setAlphaF(0.4);
+ m_SolarScheduleColour->pressPurecolor.setAlphaF(0.1);
+ } else {
+ m_SolarScheduleColour->type = 4;
+ m_SolarScheduleColour->dotColor = "#FF7272";
+ m_SolarScheduleColour->dotColor.setAlphaF(0.8);
+ m_SolarScheduleColour->gradientFromC = "#FF7272";
+ m_SolarScheduleColour->gradientFromC.setAlphaF(0.3);
+ m_SolarScheduleColour->gradientToC = "#FF7272";
+ m_SolarScheduleColour->gradientToC.setAlphaF(0.3);
+ m_SolarScheduleColour->Purecolor = "#FF7272";
+ m_SolarScheduleColour->Purecolor.setAlphaF(0.3);
+ m_SolarScheduleColour->shadowcolor = "#BA60FA";
+ m_SolarScheduleColour->textColor = "#C0C6D4";
+ m_SolarScheduleColour->timeColor = "#8548B1";
+ m_SolarScheduleColour->hightlightgradientFromC = "#A24545";
+ m_SolarScheduleColour->hightlightgradientFromC.setAlphaF(0.8);
+ m_SolarScheduleColour->hightlightgradientToC = "#A24545";
+ m_SolarScheduleColour->hightlightgradientToC.setAlphaF(0.8);
+ m_SolarScheduleColour->hightlightPurecolor = "#A24545";
+ m_SolarScheduleColour->hightlightPurecolor.setAlphaF(0.8);
+
+ m_SolarScheduleColour->hovergradientFromC = "#E56464";
+ m_SolarScheduleColour->hovergradientToC = "#E56464";
+ m_SolarScheduleColour->hovergradientFromC.setAlphaF(0.35);
+ m_SolarScheduleColour->hovergradientToC.setAlphaF(0.35);
+ m_SolarScheduleColour->hoverPurecolor = "#E56464";
+ m_SolarScheduleColour->splitColor = "#FF7272";
+ m_SolarScheduleColour->pressgradientFromC = "#FF7272";
+ m_SolarScheduleColour->pressgradientFromC.setAlphaF(0.3);
+ m_SolarScheduleColour->pressgradientToC = m_SolarScheduleColour->pressgradientFromC;
+ // m_SolarScheduleColour->pressgradientToC = "#000000";
+ // m_SolarScheduleColour->pressgradientToC.setAlphaF(0.05);
+
+ m_SolarScheduleColour->pressPurecolor = m_SolarScheduleColour->Purecolor;
+ m_SolarScheduleColour->pressgradientToC.setAlphaF(0.4);
+ m_SolarScheduleColour->pressgradientFromC.setAlphaF(0.4);
+ m_SolarScheduleColour->pressPurecolor.setAlphaF(0.1);
+ }
+}
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/src/data/schedulecolourmanage.h dde-calendar-5.7.0.23/schedule-plugin/src/data/schedulecolourmanage.h
--- dde-calendar-5.7.0.4/schedule-plugin/src/data/schedulecolourmanage.h 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/src/data/schedulecolourmanage.h 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,78 @@
+/*
+* Copyright (C) 2019 ~ 2020 Uniontech Software Technology Co.,Ltd.
+*
+* Author: uniontech
+*
+* Maintainer: uniontech
+*
+* This program is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published by
+* the Free Software Foundation, either version 3 of the License, or
+* any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program. If not, see .
+*/
+#ifndef SCHEDULECOLOURMANAGE_H
+#define SCHEDULECOLOURMANAGE_H
+
+#include
+struct CSchedulesColor {
+ int type;
+ QColor gradientFromC;
+ QColor gradientToC;
+ QColor dotColor;
+ QColor Purecolor;
+ QColor shadowcolor;
+ QColor textColor;
+ QColor timeColor;
+ QColor hightlightgradientFromC;
+ QColor hightlightgradientToC;
+ QColor hightlightPurecolor;
+ QColor hovergradientFromC;
+ QColor hovergradientToC;
+ QColor hoverPurecolor;
+ QColor splitColor;
+ QColor pressgradientFromC;
+ QColor pressgradientToC;
+ QColor pressPurecolor;
+};
+
+class ScheduleColourManage
+{
+public:
+ ScheduleColourManage();
+ ~ScheduleColourManage();
+
+public:
+ void setTheMe(int type = 0);
+ CSchedulesColor getColorByTypeId(const int &id);
+
+private:
+ CSchedulesColor LifeScheduleColour() const;
+
+ CSchedulesColor WorkScheduleColour() const;
+
+ CSchedulesColor OtherScheduleColour() const;
+
+ CSchedulesColor SolarScheduleColour() const;
+
+private:
+ void setLifeScheduleTheme(int type = 0);
+ void setWorkScheduleTheme(int type = 0);
+ void setOtherScheduleTheme(int type = 0);
+ void setSolarScheduleTheme(int type = 0);
+
+private:
+ CSchedulesColor *m_LifeScheduleColour {nullptr};
+ CSchedulesColor *m_WorkScheduleColour {nullptr};
+ CSchedulesColor *m_OtherScheduleColour {nullptr};
+ CSchedulesColor *m_SolarScheduleColour {nullptr};
+};
+
+#endif // SCHEDULECOLOURMANAGE_H
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/src/data/schedulestructs.h dde-calendar-5.7.0.23/schedule-plugin/src/data/schedulestructs.h
--- dde-calendar-5.7.0.4/schedule-plugin/src/data/schedulestructs.h 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/src/data/schedulestructs.h 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,131 @@
+/*
+ * Copyright (C) 2017 ~ 2018 Deepin Technology Co., Ltd.
+ *
+ * Author: kirigaya
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+#ifndef SCHEDULESTURCTS_H
+#define SCHEDULESTURCTS_H
+
+#include
+#include
+#include
+#include
+
+typedef struct _tagScheduleRemindInfo {
+ int id;
+ QDateTime remindDateTime;
+ int times;
+ _tagScheduleRemindInfo()
+ {
+ times = 1;
+ }
+} ScheduleRemindInfo;
+typedef struct _tagScheduleRemindData {
+ int n; //全天代表天数 非全天代表分钟
+ QTime time; //全天该变量才有效
+} ScheduleRemindData;
+typedef struct _tagScheduleEndRepeatData {
+ int type; //0 永不 1 多少次结束 2 结束日期
+ QDateTime date; //为2时才有效
+ int tcount; //1时有效
+} ScheduleEndRepeatData;
+typedef struct _tagScheduleType {
+ QString typeName; //work life other
+ QColor color; //颜色
+ int ID;
+} ScheduleType;
+typedef struct _tagScheduleDtailInfo {
+ int id;
+ QDateTime beginDateTime;
+ QDateTime endDateTime;
+ QVector ignore;
+ QString titleName;
+ QString description;
+ bool allday; //1全天
+ ScheduleType type; //1工作 2 生活 3其他
+ int RecurID; //0 代表原始 大于0 代表克隆
+ bool remind; //0无 1 提醒
+ ScheduleRemindData remindData;
+ int rpeat; //0 无 1 每天 2 每个工作日 3 每周 4每月 5每年
+ ScheduleEndRepeatData enddata;
+ explicit _tagScheduleDtailInfo()
+ {
+ type.ID = -1;
+ }
+ bool operator==(const _tagScheduleDtailInfo &info) const
+ {
+ if (info.type.ID == 4) {
+ return this->id == info.id && this->RecurID == info.RecurID && titleName == info.titleName && beginDateTime == info.beginDateTime;
+ } else {
+ return this->id == info.id && this->RecurID == info.RecurID && titleName == info.titleName;
+ }
+ }
+ bool operator<(const _tagScheduleDtailInfo &info) const
+ {
+ if (beginDateTime.date() != endDateTime.date() && info.beginDateTime.date() == info.endDateTime.date()) {
+ return true;
+ } else if (beginDateTime.date() == endDateTime.date() && info.beginDateTime.date() != info.endDateTime.date()) {
+ return false;
+ } else if (beginDateTime.date() != endDateTime.date() && info.beginDateTime.date() != info.endDateTime.date()) {
+ if (beginDateTime.date() == info.beginDateTime.date()) {
+ return beginDateTime.daysTo(endDateTime) > info.beginDateTime.daysTo(info.endDateTime);
+ }
+ return beginDateTime.date() < info.beginDateTime.date();
+ } else {
+ if (type.ID == 4)
+ return true;
+ if (info.type.ID == 4)
+ return false;
+ if (beginDateTime == info.beginDateTime) {
+ if (titleName == info.titleName) {
+ return id < info.id;
+ }
+ return titleName < info.titleName;
+ } else {
+ return beginDateTime < info.beginDateTime;
+ }
+ }
+ }
+} ScheduleDtailInfo;
+
+typedef struct _tagScheduleDateRangeInfo {
+ QDate date;
+ QVector vData;
+} ScheduleDateRangeInfo;
+typedef struct _tagMScheduleDateRangeInfo {
+ QDate bdate;
+ QDate edate;
+ bool state;
+ int num;
+ ScheduleDtailInfo tData;
+ bool operator<(const _tagMScheduleDateRangeInfo &info) const
+ {
+ if (bdate == info.bdate) {
+ if (bdate.daysTo(edate) == info.bdate.daysTo(info.edate)) {
+ return tData < info.tData;
+ } else {
+ return bdate.daysTo(edate) > info.bdate.daysTo(info.edate);
+ }
+ } else {
+ return bdate < info.bdate;
+ }
+ }
+ bool operator==(const _tagMScheduleDateRangeInfo &info) const
+ {
+ return bdate == info.bdate && edate == info.edate && tData == info.tData && state == info.state && num == info.num;
+ }
+} MScheduleDateRangeInfo;
+#endif
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/src/data/timedatastruct.h dde-calendar-5.7.0.23/schedule-plugin/src/data/timedatastruct.h
--- dde-calendar-5.7.0.4/schedule-plugin/src/data/timedatastruct.h 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/src/data/timedatastruct.h 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,68 @@
+/*
+* Copyright (C) 2019 ~ 2020 Uniontech Software Technology Co.,Ltd.
+*
+* Author: uniontech
+*
+* Maintainer: uniontech
+*
+* This program is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published by
+* the Free Software Foundation, either version 3 of the License, or
+* any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program. If not, see .
+*/
+#ifndef TIMEDATASTRUCT_H
+#define TIMEDATASTRUCT_H
+
+#include
+#include
+/**
+ * @brief The ToDateTimeInfo struct 修改时间信息
+ * m_Date 日期信息
+ * m_Time 时间信息
+ * hasDate 是否存在日期信息
+ * hasTime 是否存在时间信息
+ */
+struct DateTimeInfo {
+ QDate m_Date{};
+ QTime m_Time{};
+ bool hasDate{false};
+ bool hasTime{false};
+};
+/**
+ * @brief The SuggestDatetimeInfo struct 建议时间信息
+ * datetime 时间信息
+ * hasTime 是否存在具体时间点
+ */
+struct SuggestDatetimeInfo{
+ QDateTime datetime {};
+ bool hasTime {false};
+};
+
+/**
+ * @brief The ScheduleDateTime struct 语言时间信息
+ * m_DateTime 时间信息,获取时间点的时候需要用到
+ * m_sugTime 建议使用的时间信息
+ */
+struct SemanticsDateTime {
+ QVector dateTime{};
+ QVector suggestDatetime{};
+ /**
+ * @brief clear 清空数据
+ */
+ void clear(){
+ this->dateTime.clear();
+ this->suggestDatetime.clear();
+ }
+};
+
+
+
+#endif // TIMEDATASTRUCT_H
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/src/dbus/schedulesdbus.cpp dde-calendar-5.7.0.23/schedule-plugin/src/dbus/schedulesdbus.cpp
--- dde-calendar-5.7.0.4/schedule-plugin/src/dbus/schedulesdbus.cpp 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/src/dbus/schedulesdbus.cpp 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,676 @@
+/*
+ * Copyright (C) 2015 ~ 2018 Deepin Technology Co., Ltd.
+ *
+ * Author: kirigaya
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+
+/*
+ * This file was generated by qdbusxml2cpp version 0.8
+ * Command line was: qdbusxml2cpp -c DCalendarDBus -p dcalendardbus com.deepin.api.LunarCalendar.xml
+ *
+ * qdbusxml2cpp is Copyright (C) 2015 Digia Plc and/or its subsidiary(-ies).
+ *
+ * This is an auto-generated file.
+ * This file may have been hand-edited. Look for HAND-EDIT comments
+ * before re-generating it.
+ */
+
+#include "schedulesdbus.h"
+#include
+#include
+#include
+/*
+ * Implementation of interface class DCalendarDBus
+ */
+
+CSchedulesDBus::CSchedulesDBus(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent)
+ : QDBusAbstractInterface(service, path, staticInterfaceName(), connection, parent)
+{
+ QDBusConnection::sessionBus().connect(this->service(), this->path(), "org.freedesktop.DBus.Properties", "PropertiesChanged", "sa{sv}as", this, SLOT(__propertyChanged__(QDBusMessage)));
+}
+
+CSchedulesDBus::~CSchedulesDBus()
+{
+ QDBusConnection::sessionBus().disconnect(service(), path(), "org.freedesktop.DBus.Properties", "PropertiesChanged", "sa{sv}as", this, SLOT(propertyChanged(QDBusMessage)));
+}
+
+QString CSchedulesDBus::createScheduleDtailInfojson(const ScheduleDtailInfo &info)
+{
+ QJsonObject json;
+ json.insert("ID", info.id);
+ json.insert("AllDay", info.allday);
+ json.insert("Remind", createScheduleRemind(info));
+ json.insert("RRule", createScheduleRRule(info));
+ json.insert("Title", info.titleName);
+ json.insert("Description", info.description);
+ json.insert("Type", info.type.ID);
+ json.insert("Start", toconvertData(info.beginDateTime));
+ json.insert("End", toconvertData(info.endDateTime));
+ //json.insert("Start", "2006-01-02T15:04:05+07:00");
+ //json.insert("End", "2006-01-02T17:04:05+07:00");
+ json.insert("RecurID", info.RecurID);
+ QJsonArray jsonarry;
+ for (int i = 0; i < info.ignore.count(); i++) {
+ jsonarry.append(toconvertData(info.ignore.at(i)));
+ }
+ json.insert("Ignore", jsonarry);
+ // 构建 JSON 文档
+ QJsonDocument document;
+ document.setObject(json);
+ QByteArray byteArray = document.toJson(QJsonDocument::Compact);
+ QString strJson(byteArray);
+ return strJson;
+}
+
+QString CSchedulesDBus::createScheduleTypejson(const ScheduleType &info)
+{
+ QJsonObject json;
+ json.insert("ID", info.ID);
+ json.insert("Name", info.typeName);
+ QString colorName = QString("#%1%2%3").arg(info.color.red(), 2, 16, QChar('0')).arg(info.color.green(), 2, 16, QChar('0')).arg(info.color.blue(), 2, 16, QChar('0'));
+ json.insert("Color", info.color.name());
+ // 构建 JSON 文档
+ QJsonDocument document;
+ document.setObject(json);
+ QByteArray byteArray = document.toJson(QJsonDocument::Compact);
+ QString strJson(byteArray);
+ return strJson;
+}
+
+ScheduleType CSchedulesDBus::parsingScheduleTypejson(QJsonObject &object)
+{
+ ScheduleType type;
+ QJsonObject &rootObj = object;
+
+ //因为是预先定义好的JSON数据格式,所以这里可以这样读取
+ if (rootObj.contains("ID")) {
+ type.ID = rootObj.value("ID").toInt();
+ }
+ if (rootObj.contains("Name")) {
+ type.typeName = rootObj.value("Name").toString();
+ }
+ if (rootObj.contains("Color")) {
+ QString str = rootObj.value("Color").toString();
+ type.color = QColor(rootObj.value("Color").toString());
+ }
+ return type;
+}
+
+ScheduleDtailInfo CSchedulesDBus::parsingScheduleDtailInfojsonID(QJsonObject &obj)
+{
+ ScheduleDtailInfo info;
+
+ QJsonObject &rootObj = obj;
+ //因为是预先定义好的JSON数据格式,所以这里可以这样读取
+ if (rootObj.contains("ID")) {
+ info.id = rootObj.value("ID").toInt();
+ }
+ if (rootObj.contains("AllDay")) {
+ info.allday = rootObj.value("AllDay").toBool();
+ }
+ if (rootObj.contains("Remind")) {
+ parsingScheduleRemind(rootObj.value("Remind").toString(), info);
+ }
+ if (rootObj.contains("Title")) {
+ info.titleName = rootObj.value("Title").toString();
+ }
+ if (rootObj.contains("Description")) {
+ info.description = rootObj.value("Description").toString();
+ }
+ if (rootObj.contains("Type")) {
+ GetType(rootObj.value("Type").toInt(), info.type);
+ }
+ if (rootObj.contains("Start")) {
+ info.beginDateTime = fromconvertData(rootObj.value("Start").toString());
+ }
+ if (rootObj.contains("End")) {
+ info.endDateTime = fromconvertData(rootObj.value("End").toString());
+ }
+ if (rootObj.contains("RecurID")) {
+ info.RecurID = rootObj.value("RecurID").toInt();
+ }
+ if (rootObj.contains("RRule")) {
+ parsingScheduleRRule(rootObj.value("RRule").toString(), info);
+ }
+ if (rootObj.contains("Ignore")) {
+ QJsonArray subArray = rootObj.value("Ignore").toArray();
+ for (int i = 0; i < subArray.size(); i++) {
+ QString subObj = subArray.at(i).toString();
+ info.ignore.append(fromconvertData(subObj));
+ }
+ }
+ return info;
+}
+
+QString CSchedulesDBus::createScheduleRRule(const ScheduleDtailInfo &info)
+{
+ if (info.rpeat == 0)
+ return QString();
+ // QString str = "'";
+ QString str;
+ switch (info.rpeat) {
+ case 1: {
+ str += "FREQ=DAILY";
+ } break;
+ case 2: {
+ str += "FREQ=DAILY;BYDAY=MO,TU,WE,TH,FR";
+ } break;
+ case 3: {
+ str += "FREQ=WEEKLY";
+ } break;
+ case 4: {
+ str += "FREQ=MONTHLY";
+ } break;
+ case 5: {
+ str += "FREQ=YEARLY";
+ } break;
+ }
+ switch (info.enddata.type) {
+ case 1: {
+ str += QString(";COUNT=%1").arg(info.enddata.tcount + 1);
+ } break;
+ case 2: {
+ QDateTime datetime = info.enddata.date;
+ //datetime.setDate(datetime);
+ str += ";UNTIL=" + datetime.toString("yyyyMMddThhmmss") + "Z";
+ // str += ";UNTIL=" + toconvertData(datetime);
+ } break;
+ }
+ //str += "'";
+ return str;
+}
+
+void CSchedulesDBus::parsingScheduleRRule(QString str, ScheduleDtailInfo &info)
+{
+ if (str.isEmpty()) {
+ info.rpeat = 0;
+ return;
+ }
+ QString rrulestrs = str;
+ QStringList rruleslist = rrulestrs.split(";", QString::SkipEmptyParts);
+ if (rruleslist.count() > 0) {
+ if (rruleslist.contains("FREQ=DAILY") && rruleslist.contains("BYDAY=MO,TU,WE,TH,FR"))
+ info.rpeat = 2;
+ else if (rruleslist.contains("FREQ=DAILY")) {
+ info.rpeat = 1;
+ } else if (rruleslist.contains("FREQ=WEEKLY")) {
+ info.rpeat = 3;
+ } else if (rruleslist.contains("FREQ=MONTHLY")) {
+ info.rpeat = 4;
+ } else if (rruleslist.contains("FREQ=YEARLY")) {
+ info.rpeat = 5;
+ }
+ info.enddata.type = 0;
+ for (int i = 0; i < rruleslist.count(); i++) {
+ if (rruleslist.at(i).contains("COUNT=")) {
+ QStringList liststr = rruleslist.at(i).split("=", QString::SkipEmptyParts);
+ info.enddata.type = 1;
+ info.enddata.tcount = liststr.at(1).toInt() - 1;
+ }
+
+ if (rruleslist.at(i).contains("UNTIL=")) {
+ QStringList liststr = rruleslist.at(i).split("=", QString::SkipEmptyParts);
+ info.enddata.type = 2;
+ info.enddata.date = QDateTime::fromString(liststr.at(1).left(liststr.at(1).count() - 1), "yyyyMMddThhmmss");
+ //info.enddata.date = fromconvertData(liststr.at(1));
+ info.enddata.date = info.enddata.date;
+ }
+ }
+ }
+}
+
+QString CSchedulesDBus::createScheduleRemind(const ScheduleDtailInfo &info)
+{
+ if (!info.remind)
+ return QString();
+ QString str;
+ if (info.allday) {
+ str = QString::number(info.remindData.n) + ";" + info.remindData.time.toString("hh:mm");
+ } else {
+ str = QString::number(info.remindData.n);
+ }
+ return str;
+}
+
+void CSchedulesDBus::parsingScheduleRemind(QString str, ScheduleDtailInfo &info)
+{
+ if (str.isEmpty()) {
+ info.remind = false;
+ return;
+ }
+ info.remind = true;
+ if (info.allday) {
+ QStringList liststr = str.split(";", QString::SkipEmptyParts);
+ info.remindData.n = liststr.at(0).toInt();
+ info.remindData.time = QTime::fromString(liststr.at(1), "hh:mm");
+ } else {
+ info.remindData.n = str.toInt();
+ }
+}
+
+QString CSchedulesDBus::toconvertData(QDateTime date)
+{
+ QDateTime datetimeutc11 = date;
+ datetimeutc11.setTimeSpec(Qt::UTC);
+ QString strss = datetimeutc11.toString(Qt::ISODate);
+ datetimeutc11.setTimeSpec(Qt::OffsetFromUTC);
+ strss = datetimeutc11.toString(Qt::ISODateWithMs);
+ QDateTime datetimeutc = QDateTime::fromTime_t(0);
+ QString str = date.toString("yyyy-MM-ddThh:mm:ss") + "+" + datetimeutc.toString("hh:mm");
+ //QString str = date.toString("yyyy-MM-ddThh:mm:ss") + "Z07:00";
+ return str;
+}
+
+QDateTime CSchedulesDBus::fromconvertData(QString str)
+{
+ QStringList liststr = str.split("+", QString::SkipEmptyParts);
+ return QDateTime::fromString(liststr.at(0), "yyyy-MM-ddThh:mm:ss");
+}
+
+QString CSchedulesDBus::toconvertIGData(QDateTime date)
+{
+ QDateTime datetimeutc11 = date;
+ datetimeutc11.setTimeSpec(Qt::UTC);
+ QString strss = datetimeutc11.toString(Qt::ISODate);
+ datetimeutc11.setTimeSpec(Qt::OffsetFromUTC);
+ strss = datetimeutc11.toString(Qt::ISODateWithMs);
+ QDateTime datetimeutc = QDateTime::fromTime_t(0);
+ QString str = date.toString("yyyy-MM-ddThh:mm:ss") + "Z" + datetimeutc.toString("hh:mm");
+ //QString str = date.toString("yyyy-MM-ddThh:mm:ss") + "Z07:00";
+ return str;
+}
+
+QDateTime CSchedulesDBus::fromconvertiIGData(QString str)
+{
+ QStringList liststr = str.split("Z", QString::SkipEmptyParts);
+ return QDateTime::fromString(liststr.at(0), "yyyy-MM-ddThh:mm:ss");
+}
+
+qint64 CSchedulesDBus::CreateJob(const ScheduleDtailInfo &info)
+{
+ QList argumentList;
+ argumentList << QVariant::fromValue(createScheduleDtailInfojson(info));
+ qDebug() << argumentList.at(0);
+ QDBusMessage reply = callWithArgumentList(QDBus::Block, QStringLiteral("CreateJob"), argumentList);
+ if (reply.type() != QDBusMessage::ReplyMessage) {
+ qDebug() << reply;
+ return -1;
+ }
+ QDBusReply id = reply;
+
+ return id.value();
+}
+
+bool CSchedulesDBus::GetJobs(int startYear, int startMonth, int startDay, int endYear, int endMonth, int endDay, QVector &out)
+{
+ QList argumentList;
+ argumentList << QVariant::fromValue(startYear) << QVariant::fromValue(startMonth) << QVariant::fromValue(startDay);
+ argumentList << QVariant::fromValue(endYear) << QVariant::fromValue(endMonth) << QVariant::fromValue(endDay);
+ QDBusMessage reply = callWithArgumentList(QDBus::Block, QStringLiteral("GetJobs"), argumentList);
+ if (reply.type() != QDBusMessage::ReplyMessage) {
+ return false;
+ }
+ QDBusReply jobs = reply;
+
+ if (!jobs.isValid())
+ return false;
+ QJsonParseError json_error;
+ QJsonDocument jsonDoc(QJsonDocument::fromJson(jobs.value().toLocal8Bit(), &json_error));
+
+ if (json_error.error != QJsonParseError::NoError) {
+ return false;
+ }
+
+ QJsonArray rootarry = jsonDoc.array();
+ for (int i = 0; i < rootarry.size(); i++) {
+ QJsonObject subObj = rootarry.at(i).toObject();
+
+ ScheduleDateRangeInfo info;
+ //因为是预先定义好的JSON数据格式,所以这里可以这样读取
+ if (subObj.contains("Date")) {
+ info.date = QDate::fromString(subObj.value("Date").toString(), "yyyy-MM-dd");
+ }
+ if (subObj.contains("Jobs")) {
+ QJsonArray subarry = subObj.value("Jobs").toArray();
+ for (int j = 0; j < subarry.size(); j++) {
+ QJsonObject ssubObj = subarry.at(j).toObject();
+ info.vData.append(parsingScheduleDtailInfojsonID(ssubObj));
+ }
+ }
+ out.append(info);
+ }
+
+ return true;
+}
+
+bool CSchedulesDBus::GetJob(qint64 jobId, ScheduleDtailInfo &out)
+{
+ QList argumentList;
+ argumentList << QVariant::fromValue(jobId);
+ QDBusMessage reply = callWithArgumentList(QDBus::Block, QStringLiteral("GetJob"), argumentList);
+ if (reply.type() != QDBusMessage::ReplyMessage) {
+ return false;
+ }
+ QDBusReply jobs = reply;
+
+ if (!jobs.isValid())
+ return false;
+ QJsonParseError json_error;
+ QJsonDocument jsonDoc(QJsonDocument::fromJson(jobs.value().toLocal8Bit(), &json_error));
+
+ if (json_error.error != QJsonParseError::NoError) {
+ return false;
+ }
+
+ QJsonObject ssubObj = jsonDoc.object();
+ out = parsingScheduleDtailInfojsonID(ssubObj);
+
+ return true;
+}
+
+bool CSchedulesDBus::UpdateJob(const ScheduleDtailInfo &info)
+{
+ QList argumentList;
+ argumentList << QVariant::fromValue(createScheduleDtailInfojson(info));
+ QDBusMessage reply = callWithArgumentList(QDBus::Block, QStringLiteral("UpdateJob"), argumentList);
+ if (reply.type() != QDBusMessage::ReplyMessage) {
+ //dbus UpdateJob 错误提醒
+ qDebug()<<"UpdateJob Err";
+ qDebug()< jobs = reply;
+
+ //if (!jobs.isValid()) return false;
+
+ return true;
+}
+
+bool CSchedulesDBus::DeleteJob(qint64 jobId)
+{
+ QList argumentList;
+ argumentList << QVariant::fromValue(jobId);
+ QDBusMessage reply = callWithArgumentList(QDBus::Block, QStringLiteral("DeleteJob"), argumentList);
+ if (reply.type() != QDBusMessage::ReplyMessage) {
+ return false;
+ }
+
+ return true;
+}
+
+bool CSchedulesDBus::QueryJobs(QString key, QDateTime starttime, QDateTime endtime, QVector &out)
+{
+ QJsonObject qjson;
+ qjson.insert("Key", key);
+ qjson.insert("Start", toconvertData(starttime));
+ qjson.insert("End", toconvertData(endtime));
+ // 构建 JSON 文档
+ QJsonDocument qdocument;
+ qdocument.setObject(qjson);
+ QByteArray qbyteArray = qdocument.toJson(QJsonDocument::Compact);
+ QString strJson(qbyteArray);
+
+ QList argumentList;
+ argumentList << QVariant::fromValue(strJson);
+ QDBusMessage reply = callWithArgumentList(QDBus::Block, QStringLiteral("QueryJobs"), argumentList);
+ if (reply.type() != QDBusMessage::ReplyMessage) {
+ return false;
+ }
+ QDBusReply jobs = reply;
+
+ if (!jobs.isValid())
+ return false;
+ QJsonParseError json_error;
+ QJsonDocument jsonDoc(QJsonDocument::fromJson(jobs.value().toLocal8Bit(), &json_error));
+
+ if (json_error.error != QJsonParseError::NoError) {
+ return false;
+ }
+
+ QJsonArray rootarry = jsonDoc.array();
+ for (int i = 0; i < rootarry.size(); i++) {
+ QJsonObject subObj = rootarry.at(i).toObject();
+
+ ScheduleDateRangeInfo info;
+ //因为是预先定义好的JSON数据格式,所以这里可以这样读取
+ if (subObj.contains("Date")) {
+ info.date = QDate::fromString(subObj.value("Date").toString(), "yyyy-MM-dd");
+ }
+ if (subObj.contains("Jobs")) {
+ QJsonArray subarry = subObj.value("Jobs").toArray();
+ for (int j = 0; j < subarry.size(); j++) {
+ QJsonObject ssubObj = subarry.at(j).toObject();
+ info.vData.append(parsingScheduleDtailInfojsonID(ssubObj));
+ }
+ }
+ out.append(info);
+ }
+ return true;
+}
+
+bool CSchedulesDBus::QueryJobs(QString key, QDateTime starttime, QDateTime endtime, QString &out)
+{
+ QJsonObject qjson;
+ qjson.insert("Key", key);
+ qjson.insert("Start", toconvertData(starttime));
+ qjson.insert("End", toconvertData(endtime));
+ // 构建 JSON 文档
+ QJsonDocument qdocument;
+ qdocument.setObject(qjson);
+ QByteArray qbyteArray = qdocument.toJson(QJsonDocument::Compact);
+ QString strJson(qbyteArray);
+
+ QList argumentList;
+ argumentList << QVariant::fromValue(strJson);
+ QDBusMessage reply = callWithArgumentList(QDBus::Block, QStringLiteral("QueryJobs"), argumentList);
+ if (reply.type() != QDBusMessage::ReplyMessage) {
+ return false;
+ }
+ QDBusReply jobs = reply;
+
+ if (!jobs.isValid())
+ return false;
+ out = jobs.value().toLocal8Bit();
+ return true;
+}
+
+bool CSchedulesDBus::QueryJobsWithLimit(QDateTime starttime, QDateTime endtime, qint32 maxNum, QVector &out)
+{
+ QJsonObject qjson;
+ qjson.insert("Start", toconvertData(starttime));
+ qjson.insert("End", toconvertData(endtime));
+ qjson.insert("key", "");
+ // 构建 JSON 文档
+ QJsonDocument qdocument;
+ qdocument.setObject(qjson);
+ QByteArray qbyteArray = qdocument.toJson(QJsonDocument::Compact);
+ QString strJson(qbyteArray);
+
+ QList argumentList;
+ argumentList << QVariant::fromValue(strJson);
+ argumentList << maxNum;
+ QDBusMessage reply = callWithArgumentList(QDBus::Block, QStringLiteral("QueryJobsWithLimit"), argumentList);
+ if (reply.type() != QDBusMessage::ReplyMessage) {
+ return false;
+ }
+ QDBusReply jobs = reply;
+
+ if (!jobs.isValid())
+ return false;
+ QJsonParseError json_error;
+ QJsonDocument jsonDoc(QJsonDocument::fromJson(jobs.value().toLocal8Bit(), &json_error));
+
+ if (json_error.error != QJsonParseError::NoError) {
+ return false;
+ }
+
+ QJsonArray rootarry = jsonDoc.array();
+ for (int i = 0; i < rootarry.size(); i++) {
+ QJsonObject subObj = rootarry.at(i).toObject();
+
+ ScheduleDateRangeInfo info;
+ //因为是预先定义好的JSON数据格式,所以这里可以这样读取
+ if (subObj.contains("Date")) {
+ info.date = QDate::fromString(subObj.value("Date").toString(), "yyyy-MM-dd");
+ }
+ if (subObj.contains("Jobs")) {
+ QJsonArray subarry = subObj.value("Jobs").toArray();
+ for (int j = 0; j < subarry.size(); j++) {
+ QJsonObject ssubObj = subarry.at(j).toObject();
+ info.vData.append(parsingScheduleDtailInfojsonID(ssubObj));
+ }
+ }
+ out.append(info);
+ }
+ return true;
+}
+
+bool CSchedulesDBus::QueryJobsWithRule(QDateTime starttime, QDateTime endtime, QString rule, QVector &out)
+{
+ QJsonObject qjson;
+ qjson.insert("Start", toconvertData(starttime));
+ qjson.insert("End", toconvertData(endtime));
+ qjson.insert("key", "");
+ // 构建 JSON 文档
+ QJsonDocument qdocument;
+ qdocument.setObject(qjson);
+ QByteArray qbyteArray = qdocument.toJson(QJsonDocument::Compact);
+ QString strJson(qbyteArray);
+
+ QList argumentList;
+ argumentList << QVariant::fromValue(strJson);
+ argumentList << rule;
+ QDBusMessage reply = callWithArgumentList(QDBus::Block, QStringLiteral("QueryJobsWithRule"), argumentList);
+ if (reply.type() != QDBusMessage::ReplyMessage) {
+ return false;
+ }
+ QDBusReply jobs = reply;
+
+ if (!jobs.isValid())
+ return false;
+ QJsonParseError json_error;
+ QJsonDocument jsonDoc(QJsonDocument::fromJson(jobs.value().toLocal8Bit(), &json_error));
+
+ if (json_error.error != QJsonParseError::NoError) {
+ return false;
+ }
+
+ QJsonArray rootarry = jsonDoc.array();
+ for (int i = 0; i < rootarry.size(); i++) {
+ QJsonObject subObj = rootarry.at(i).toObject();
+
+ ScheduleDateRangeInfo info;
+ //因为是预先定义好的JSON数据格式,所以这里可以这样读取
+ if (subObj.contains("Date")) {
+ info.date = QDate::fromString(subObj.value("Date").toString(), "yyyy-MM-dd");
+ }
+ if (subObj.contains("Jobs")) {
+ QJsonArray subarry = subObj.value("Jobs").toArray();
+ for (int j = 0; j < subarry.size(); j++) {
+ QJsonObject ssubObj = subarry.at(j).toObject();
+ info.vData.append(parsingScheduleDtailInfojsonID(ssubObj));
+ }
+ }
+ out.append(info);
+ }
+ return true;
+}
+
+bool CSchedulesDBus::GetTypes(QVector &out)
+{
+ QList argumentList;
+ //argumentList << QVariant::fromValue(jobId);
+ QDBusMessage reply = callWithArgumentList(QDBus::Block, QStringLiteral("GetTypes"), argumentList);
+ if (reply.type() != QDBusMessage::ReplyMessage) {
+ return false;
+ }
+ QDBusReply jobs = reply;
+
+ if (!jobs.isValid())
+ return false;
+ QJsonParseError json_error;
+ QJsonDocument jsonDoc(QJsonDocument::fromJson(jobs.value().toLocal8Bit(), &json_error));
+
+ if (json_error.error != QJsonParseError::NoError) {
+ return false;
+ }
+
+ QJsonArray rootarry = jsonDoc.array();
+ for (int i = 0; i < rootarry.size(); i++) {
+ QJsonObject subObj = rootarry.at(i).toObject();
+ out.append(parsingScheduleTypejson(subObj));
+ }
+ return true;
+}
+
+bool CSchedulesDBus::GetType(qint64 jobId, ScheduleType &out)
+{
+ QList argumentList;
+ argumentList << QVariant::fromValue(jobId);
+ QDBusMessage reply = callWithArgumentList(QDBus::Block, QStringLiteral("GetType"), argumentList);
+ if (reply.type() != QDBusMessage::ReplyMessage) {
+ return false;
+ }
+ QDBusReply jobs = reply;
+
+ if (!jobs.isValid())
+ return false;
+ QJsonParseError json_error;
+ QJsonDocument jsonDoc(QJsonDocument::fromJson(jobs.value().toLocal8Bit(), &json_error));
+
+ if (json_error.error != QJsonParseError::NoError) {
+ return false;
+ }
+
+ QJsonObject subObj = jsonDoc.object();
+ out = parsingScheduleTypejson(subObj);
+ return true;
+}
+
+qint64 CSchedulesDBus::CreateType(const ScheduleType &info)
+{
+ QList argumentList;
+ argumentList << QVariant::fromValue(createScheduleTypejson(info));
+ QDBusMessage reply = callWithArgumentList(QDBus::Block, QStringLiteral("CreateType"), argumentList);
+ if (reply.type() != QDBusMessage::ReplyMessage) {
+ return -1;
+ }
+ QDBusReply id = reply;
+
+ return id.value();
+}
+
+bool CSchedulesDBus::DeleteType(qint64 jobId)
+{
+ QList argumentList;
+ argumentList << QVariant::fromValue(jobId);
+ QDBusMessage reply = callWithArgumentList(QDBus::Block, QStringLiteral("DeleteType"), argumentList);
+ if (reply.type() != QDBusMessage::ReplyMessage) {
+ return false;
+ }
+ return true;
+}
+
+bool CSchedulesDBus::UpdateType(const ScheduleType &info)
+{
+ QList argumentList;
+ argumentList << QVariant::fromValue(createScheduleTypejson(info));
+ QDBusMessage reply = callWithArgumentList(QDBus::Block, QStringLiteral("UpdateType"), argumentList);
+ if (reply.type() != QDBusMessage::ReplyMessage) {
+ return false;
+ }
+ return true;
+}
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/src/dbus/schedulesdbus.h dde-calendar-5.7.0.23/schedule-plugin/src/dbus/schedulesdbus.h
--- dde-calendar-5.7.0.4/schedule-plugin/src/dbus/schedulesdbus.h 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/src/dbus/schedulesdbus.h 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,121 @@
+/*
+ * Copyright (C) 2015 ~ 2018 Deepin Technology Co., Ltd.
+ *
+ * Author: kirigaya
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
+
+/*
+ * This file was generated by qdbusxml2cpp version 0.8
+ * Command line was: qdbusxml2cpp -c DCalendarDBus -p dcalendardbus com.deepin.api.LunarCalendar.xml
+ *
+ * qdbusxml2cpp is Copyright (C) 2015 Digia Plc and/or its subsidiary(-ies).
+ *
+ * This is an auto-generated file.
+ * Do not edit! All changes made to it will be lost.
+ */
+
+#ifndef SCHEDULESDBUS_H
+#define SCHEDULESDBUS_H
+
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include
+#include "../data/schedulestructs.h"
+
+/*
+ * Proxy class for interface com.deepin.api.LunarCalendar
+ */
+class CSchedulesDBus : public QDBusAbstractInterface
+{
+ Q_OBJECT
+
+ Q_SLOT void __propertyChanged__(const QDBusMessage &msg)
+ {
+ QList arguments = msg.arguments();
+ if (3 != arguments.count())
+ return;
+ QString interfaceName = msg.arguments().at(0).toString();
+ if (interfaceName != "com.deepin.api.LunarCalendar")
+ return;
+ QVariantMap changedProps = qdbus_cast(arguments.at(1).value());
+ foreach (const QString &prop, changedProps.keys()) {
+ const QMetaObject *self = metaObject();
+ for (int i = self->propertyOffset(); i < self->propertyCount(); ++i) {
+ QMetaProperty p = self->property(i);
+ if (p.name() == prop) {
+ Q_EMIT p.notifySignal().invoke(this);
+ }
+ }
+ }
+ }
+
+public:
+ static inline const char *staticInterfaceName()
+ {
+ return "com.deepin.daemon.Calendar.Scheduler";
+ }
+
+public:
+ CSchedulesDBus(const QString &service, const QString &path, const QDBusConnection &connection, QObject *parent = nullptr);
+
+ ~CSchedulesDBus();
+ QString toconvertIGData(QDateTime date);
+ QDateTime fromconvertiIGData(QString str);
+ static QString createScheduleDtailInfojson(const ScheduleDtailInfo &info);
+ ScheduleDtailInfo parsingScheduleDtailInfojsonID(QJsonObject &obj);
+
+private:
+ QString createScheduleTypejson(const ScheduleType &info);
+ ScheduleType parsingScheduleTypejson(QJsonObject &object);
+
+ static QString createScheduleRRule(const ScheduleDtailInfo &info);
+ void parsingScheduleRRule(QString str, ScheduleDtailInfo &info);
+ static QString createScheduleRemind(const ScheduleDtailInfo &info);
+ void parsingScheduleRemind(QString str, ScheduleDtailInfo &info);
+ static QString toconvertData(QDateTime date);
+ QDateTime fromconvertData(QString str);
+public Q_SLOTS: // METHODS
+
+ qint64 CreateJob(const ScheduleDtailInfo &info);
+ bool GetJobs(int startYear, int startMonth, int startDay, int endYear, int endMonth, int endDay, QVector &out);
+ bool GetJob(qint64 jobId, ScheduleDtailInfo &out);
+ bool UpdateJob(const ScheduleDtailInfo &info);
+ bool DeleteJob(qint64 jobId);
+ bool QueryJobs(QString key, QDateTime starttime, QDateTime endtime, QVector &out);
+ bool QueryJobs(QString key, QDateTime starttime, QDateTime endtime, QString &out);
+ bool QueryJobsWithLimit(QDateTime starttime, QDateTime endtime, qint32 maxNum, QVector &out);
+ bool QueryJobsWithRule(QDateTime starttime, QDateTime endtime, QString rule, QVector &out);
+
+ bool GetTypes(QVector &out);
+ bool GetType(qint64 jobId, ScheduleType &out);
+ qint64 CreateType(const ScheduleType &info);
+ bool DeleteType(qint64 jobId);
+ bool UpdateType(const ScheduleType &info);
+
+Q_SIGNALS: // SIGNALS
+ // begin property changed signals
+};
+#endif
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/src/globaldef.h dde-calendar-5.7.0.23/schedule-plugin/src/globaldef.h
--- dde-calendar-5.7.0.4/schedule-plugin/src/globaldef.h 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/src/globaldef.h 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,186 @@
+/*
+* Copyright (C) 2019 ~ 2020 Uniontech Software Technology Co.,Ltd.
+*
+* Author: uniontech
+*
+* Maintainer: uniontech
+*
+* This program is free software: you can redistribute it and/or modify
+* it under the terms of the GNU General Public License as published by
+* the Free Software Foundation, either version 3 of the License, or
+* any later version.
+*
+* This program is distributed in the hope that it will be useful,
+* but WITHOUT ANY WARRANTY; without even the implied warranty of
+* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+* GNU General Public License for more details.
+*
+* You should have received a copy of the GNU General Public License
+* along with this program. If not, see .
+*/
+#ifndef GLOBALDEF_H
+#define GLOBALDEF_H
+
+#define PLUGIN_TITLE_NAME "日历"
+
+#define LOG_FILENAME "/home/uniontech/.cache/deepin/dde-calendar/scheduleplugin.log"
+
+#define SERVICE_NAME "scheduleX"
+
+#define DBUS_SERVICE "com.deepin.daemon.Calendar"
+#define DBUS_PATCH "/com/deepin/daemon/Calendar/Scheduler"
+
+#define DBUS_CALENDAR_SERVICE "com.deepin.Calendar"
+#define DBUS_CALENDAR_PATCH "/com/deepin/Calendar"
+#define DBUS_CALENDAR_INTFACE "com.deepin.Calendar"
+
+#define NEW_SCHEDULE "新建日程"
+
+#define DATETIME_FRAME "yyyyMMdd hh:mm:ss"
+//日期格式
+#define DATEFORMAT "yyyy-MM-dd"
+//时间格式
+#define TIMEFORMAT "hh:mm:ss"
+
+
+#define PROCESS_OPEN_CALENDAR "dbus-send --print-reply --dest=com.deepin.Calendar /com/deepin/Calendar com.deepin.Calendar.RaiseWindow"
+
+//日程重复类型
+//每天
+#define DBUS_RRUL_EVED "FREQ=DAILY"
+//每周
+#define DBUS_RRUL_EVEW "FREQ=WEEKLY"
+//每月
+#define DBUS_RRUL_EVEM "FREQ=MONTHLY"
+//每年
+#define DBUS_RRUL_EVEY "FREQ=YEARLY"
+//每个工作日
+#define DBUS_RRUL_WORK "FREQ=DAILY;BYDAY=MO,TU,WE,TH,FR"
+
+//日程json关键字
+#define JSON_CREATE "CREATE"
+#define JSON_VIEW "VIEW"
+#define JSON_CANCEL "CANCEL"
+#define JSON_CHANGE "CHANGE"
+#define JSON_NO_INTENT "NO_INTENT"
+#define JSON_YES_INTENT "YES_INTENT"
+//日程json槽位关键字
+#define JSON_NAME "name"
+#define JSON_CONTENT "content"
+#define JSON_REPEAT "repeat"
+#define JSON_DATETIME "datetime"
+#define JSON_VALUE "value"
+#define JSON_NORMVALUE "normValue"
+#define JSON_PROPERTY "property"
+#define JSON_NEXT "next"
+#define JSON_LAST "last"
+#define JSON_FROMDATETIME "fromTime"
+#define JSON_TODATETIME "toTime"
+#define JSON_TOPLACE "toPlace"
+#define JSON_ALL "all"
+#define JSON_THIS "this"
+#define JSON_POSRANK_OFFSET "posRank.offset"
+
+#define JOSN_DATE_DELIMITER "/"
+#define JSON_DATETIME_DELIMITER "T"
+//每天多少秒
+#define ONE_DAY_SECS 60 * 60 * 24
+
+//widget show
+#define CONFIRM_BUTTON_STRING "确定"
+#define CANCEL_BUTTON_STRING "取消"
+#define DELETE_BUTTON_STRING "删除日程"
+#define DELETEALL_BUTTON_STRING "删除全部"
+#define ONLY_DELETE_THIS_BUTTON_STRING "仅删除此日程"
+
+#define CHANGE_ALL_BUTTON_STRING "修改全部"
+#define CHANGE_ONLYL_BUTTON_STRING "仅修改此日程"
+
+
+#define CREATE_ERR_TTS "新建功能不支持此说法"
+#define CANCEL_ERR_TTS "查询功能不支持此说法"
+//没有对应日程的回复语
+#define QUERY_ERR_TTS "您还没有日程提醒,无法寻找对应的日程!"
+//修改日程初始状态错误回复语
+#define CHANGE_INI_ERR_TSS "当前场景不支持这个操作哦。请问您要将什么日程修改到什么时间或修改到什么内容?"
+//修改日程询问回复语
+#define CHANGE_TO_TTS "请问您要将此日程修改到什么时间或修改到什么内容?"
+//错误操作回复语
+#define G_ERR_TTS "当前场景不支持这个操作哦。"
+//取消删除日程回复语
+#define CANCEL_DELETION_TTS "已为您取消删除日程。"
+//确认删除日程回复语
+#define CONFIRM_DELETION_TTS "已为您删除日程。"
+//取消修改日程回复语
+#define CANCEL_CHANGE_TTS "已为您取消修改日程。"
+//确认修改日程回复语
+#define CONFIRM_CHANGE_TTS "已为您修改日程。"
+//没有日程提醒回复语
+#define NO_SCHEDULE_TTS "您还没有日程提醒。"
+//删除重复日程询问回复语
+#define REPEST_SCHEDULE_CANCEL_TTS "该日程是循环的日程,请问是删除当前日程还是所有日程?"
+//删除普通日程询问回复语
+#define CONFIRM_SCHEDULE_CANCEL_TTS "我要帮您取消这个日程吗?操作后将在日历中同步删除。"
+//删除选择日程回复语
+#define CANCEL_SELECT_TTS "这是您的所有日程,您要删除哪一个日程?"
+//选择修改回复语
+#define SELECT_CHANGE_TTS "这是您的所有日程,您要修改哪一个日程?"
+//修改重复日程询问回复语
+#define REPEST_SCHEDULE_CHANGE_TTS "该日程是循环的日程,请问是修改当前日程还是所有日程?"
+//修改普通日程询问回复语
+#define CONFIRM_SCHEDULE_CHANGE_TTS "我要帮您修改这个日程吗?操作后将在日历中同步修改。"
+//修改到的时间不在规定时间范围内
+#define CHANGE_TIME_OUT_TTS "修改日程的时间范围为未来半年哦。"
+#define ALL_DAY "全天"
+//修改或取消时间不在未来半年的回复语
+#define OVERTIME_TTS "只能取消或修改未来半年的日程!"
+//新建日程开始时间不在规定时间范围内
+#define CREATE_TIME_OUT_TTS "只能创建未来半年的日程"
+//新建每周末提醒的日程的回复语
+#define EVERY_WEEKEND_TTS "好的,每周六到周日的%1我都会提醒您。"
+//跨天日程,开始日期小于当前时间的回复语
+#define BEGINDATETIME_LATER_THAN_CURRENTDATETIME_ACROSS_THE_DAY_TTS "好的,%1我会提醒您。"
+//查询日期过期
+#define VIEW_DATE_IS_OVERDUE_TTS "抱歉,不能查询过期的提醒"
+//查询日程时间不再规定范围内
+#define VIEW_DATETIME_OUT_TTS "只能查询未来半年的日程"
+//没有查询到日程
+#define NO_SCHEDULE_VIEWED_TTS "没有找到对应的日程"
+//查找到n个日程
+#define VIEW_SCHEDULE_TTS "找到%1个日程"
+//半年天数
+#define MAXIMUM_DAYS_IN_THE_FUTURE 183
+//不带窗口的回复宏定义
+#define REPLY_ONLY_TTS(reply, msgtts, dsptts, isEnd) \
+ reply.setReplyType(Reply::RT_STRING_TTS | Reply::RT_STRING_DISPLAY); \
+ reply.ttsMessage(msgtts); \
+ reply.displayMessage(dsptts); \
+ reply.code(0); \
+ reply.setShouldEndSession(isEnd); \
+
+//带窗口的回复宏定义
+#define REPLY_WIDGET_TTS(reply, widget, msgtts, dsptts, isEnd) \
+ reply.setReplyType(Reply::RT_INNER_WIDGET | Reply::RT_STRING_TTS | Reply::RT_STRING_DISPLAY); \
+ reply.setReplyWidget(widget); \
+ reply.ttsMessage(msgtts); \
+ reply.displayMessage(dsptts); \
+ reply.code(0); \
+ reply.setShouldEndSession(isEnd); \
+
+//未来半年开始时间和结束时间
+#define TIME_FRAME_IN_THE_NEXT_SIX_MONTHT \
+ QDateTime beginTime = QDateTime::currentDateTime(); \
+ QDateTime endTime = QDateTime::currentDateTime().addDays(180);
+
+//modifyScheduleItem
+#define MODIFY_ITEM_HEIGHT 48
+//item圆角
+#define ITEM_RADIUS 8
+
+//最多显示10个item
+#define ITEM_SHOW_NUM 10
+
+#define OPENCALENDAR_WIDGET_TITLE "在“日历”中查看所有%1个结果..."
+#define OPENCALENDAR_WDIGET_HEIGHT 17
+
+#endif // GLOBALDEF_H
diff -Nru dde-calendar-5.7.0.4/schedule-plugin/src/interface/reply.h dde-calendar-5.7.0.23/schedule-plugin/src/interface/reply.h
--- dde-calendar-5.7.0.4/schedule-plugin/src/interface/reply.h 1970-01-01 00:00:00.000000000 +0000
+++ dde-calendar-5.7.0.23/schedule-plugin/src/interface/reply.h 2020-11-03 09:03:22.000000000 +0000
@@ -0,0 +1,205 @@
+#ifndef REPLY_H
+#define REPLY_H
+
+#include
+#include
+#include