Re: Review Request 125817: Add plugin system for Calendar events

2015-11-16 Thread Martin Klapetek

---
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/125817/
---

(Updated Nov. 16, 2015, 4:55 p.m.)


Status
--

This change has been marked as submitted.


Review request for KDE Frameworks, Plasma and Daniel Vrátil.


Changes
---

Submitted with commit fe0384f0d4152e622b203385bd968657a3650d2c by Martin 
Klapetek to branch master.


Repository: plasma-framework


Description
---

This adds a simple plugin interface that can be subclassed
and provide events integration with Plasma Calendar applet.

It's asynchronous and I've kept it deliberately simple.
For now the Calendar tells the plugins which date range
is being displayed, the plugins load the data and then
emit the dataReady() signal containing the events.

The events are stored in a multihash for quick access
by the Calendar's agenda part but also for overall
easy-to-use (eg. in teh model data()).

The event data is stored in EventData class, which has
a pretty self-explanatory members, except perhaps the
"isMinor" one. The intention with this is to support
namedays, where in some countries the calendars have
different name every day. This is just a minor holiday
and as such should not mark the calendar grid, otherwise
the whole grid would be in a different color.

Putting the interface here might raise the question of
depending on plasma-framework, but plugins provided by
KDE can go to plasma-workspace and other 3rd party ones
would just have to live with it. I don't think it will
be a problem but if it turns out it is, we can rethink
the placement.


Diffs
-

  src/declarativeimports/calendar/CMakeLists.txt 40ead91 
  src/declarativeimports/calendar/calendarplugin.cpp bafe80c 
  src/declarativeimports/calendar/daysmodel.h a5bdac9 
  src/declarativeimports/calendar/daysmodel.cpp 2d059a8 
  src/declarativeimports/calendar/eventdatadecorator.h PRE-CREATION 
  src/declarativeimports/calendar/eventdatadecorator.cpp PRE-CREATION 
  src/declarativeimports/calendar/plasmacalendarintegration/CMakeLists.txt 
PRE-CREATION 
  
src/declarativeimports/calendar/plasmacalendarintegration/PlasmaCalendarIntegrationConfig.cmake.in
 PRE-CREATION 
  
src/declarativeimports/calendar/plasmacalendarintegration/calendareventsplugin.h
 PRE-CREATION 
  
src/declarativeimports/calendar/plasmacalendarintegration/calendareventsplugin.cpp
 PRE-CREATION 
  src/declarativeimports/calendar/plasmacalendarintegration/eventdata_p.cpp 
PRE-CREATION 
  
src/declarativeimports/calendar/plasmacalendarintegration/plasmacalendarintegration_export.h
 PRE-CREATION 

Diff: https://git.reviewboard.kde.org/r/125817/diff/


Testing
---

I have a simple KHolidays based plugin written (patch should be up later today)
and patches in the Calendar applet.

Everything works as expected:
* the days are marked as containing an event
* the agenda part displays details of that event (name)


Thanks,

Martin Klapetek

___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: Review Request 125817: Add plugin system for Calendar events

2015-11-04 Thread David Edmundson

---
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/125817/#review88030
---

Ship it!


Ship It!

- David Edmundson


On Nov. 2, 2015, 5:35 p.m., Martin Klapetek wrote:
> 
> ---
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/125817/
> ---
> 
> (Updated Nov. 2, 2015, 5:35 p.m.)
> 
> 
> Review request for KDE Frameworks, Plasma and Daniel Vrátil.
> 
> 
> Repository: plasma-framework
> 
> 
> Description
> ---
> 
> This adds a simple plugin interface that can be subclassed
> and provide events integration with Plasma Calendar applet.
> 
> It's asynchronous and I've kept it deliberately simple.
> For now the Calendar tells the plugins which date range
> is being displayed, the plugins load the data and then
> emit the dataReady() signal containing the events.
> 
> The events are stored in a multihash for quick access
> by the Calendar's agenda part but also for overall
> easy-to-use (eg. in teh model data()).
> 
> The event data is stored in EventData class, which has
> a pretty self-explanatory members, except perhaps the
> "isMinor" one. The intention with this is to support
> namedays, where in some countries the calendars have
> different name every day. This is just a minor holiday
> and as such should not mark the calendar grid, otherwise
> the whole grid would be in a different color.
> 
> Putting the interface here might raise the question of
> depending on plasma-framework, but plugins provided by
> KDE can go to plasma-workspace and other 3rd party ones
> would just have to live with it. I don't think it will
> be a problem but if it turns out it is, we can rethink
> the placement.
> 
> 
> Diffs
> -
> 
>   src/declarativeimports/calendar/CMakeLists.txt 40ead91 
>   src/declarativeimports/calendar/calendarplugin.cpp bafe80c 
>   src/declarativeimports/calendar/daysmodel.h a5bdac9 
>   src/declarativeimports/calendar/daysmodel.cpp 2d059a8 
>   src/declarativeimports/calendar/eventdatadecorator.h PRE-CREATION 
>   src/declarativeimports/calendar/eventdatadecorator.cpp PRE-CREATION 
>   src/declarativeimports/calendar/plasmacalendarintegration/CMakeLists.txt 
> PRE-CREATION 
>   
> src/declarativeimports/calendar/plasmacalendarintegration/PlasmaCalendarIntegrationConfig.cmake.in
>  PRE-CREATION 
>   
> src/declarativeimports/calendar/plasmacalendarintegration/calendareventsplugin.h
>  PRE-CREATION 
>   
> src/declarativeimports/calendar/plasmacalendarintegration/calendareventsplugin.cpp
>  PRE-CREATION 
>   src/declarativeimports/calendar/plasmacalendarintegration/eventdata_p.cpp 
> PRE-CREATION 
>   
> src/declarativeimports/calendar/plasmacalendarintegration/plasmacalendarintegration_export.h
>  PRE-CREATION 
> 
> Diff: https://git.reviewboard.kde.org/r/125817/diff/
> 
> 
> Testing
> ---
> 
> I have a simple KHolidays based plugin written (patch should be up later 
> today)
> and patches in the Calendar applet.
> 
> Everything works as expected:
> * the days are marked as containing an event
> * the agenda part displays details of that event (name)
> 
> 
> Thanks,
> 
> Martin Klapetek
> 
>

___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: Review Request 125817: Add plugin system for Calendar events

2015-11-02 Thread Martin Klapetek

---
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/125817/
---

(Updated Nov. 2, 2015, 6:35 p.m.)


Review request for KDE Frameworks, Plasma and Daniel Vrátil.


Changes
---

* Fixed David's issues
* Sorted the events by their starttime


Repository: plasma-framework


Description
---

This adds a simple plugin interface that can be subclassed
and provide events integration with Plasma Calendar applet.

It's asynchronous and I've kept it deliberately simple.
For now the Calendar tells the plugins which date range
is being displayed, the plugins load the data and then
emit the dataReady() signal containing the events.

The events are stored in a multihash for quick access
by the Calendar's agenda part but also for overall
easy-to-use (eg. in teh model data()).

The event data is stored in EventData class, which has
a pretty self-explanatory members, except perhaps the
"isMinor" one. The intention with this is to support
namedays, where in some countries the calendars have
different name every day. This is just a minor holiday
and as such should not mark the calendar grid, otherwise
the whole grid would be in a different color.

Putting the interface here might raise the question of
depending on plasma-framework, but plugins provided by
KDE can go to plasma-workspace and other 3rd party ones
would just have to live with it. I don't think it will
be a problem but if it turns out it is, we can rethink
the placement.


Diffs (updated)
-

  src/declarativeimports/calendar/CMakeLists.txt 40ead91 
  src/declarativeimports/calendar/calendarplugin.cpp bafe80c 
  src/declarativeimports/calendar/daysmodel.h a5bdac9 
  src/declarativeimports/calendar/daysmodel.cpp 2d059a8 
  src/declarativeimports/calendar/eventdatadecorator.h PRE-CREATION 
  src/declarativeimports/calendar/eventdatadecorator.cpp PRE-CREATION 
  src/declarativeimports/calendar/plasmacalendarintegration/CMakeLists.txt 
PRE-CREATION 
  
src/declarativeimports/calendar/plasmacalendarintegration/PlasmaCalendarIntegrationConfig.cmake.in
 PRE-CREATION 
  
src/declarativeimports/calendar/plasmacalendarintegration/calendareventsplugin.h
 PRE-CREATION 
  
src/declarativeimports/calendar/plasmacalendarintegration/calendareventsplugin.cpp
 PRE-CREATION 
  src/declarativeimports/calendar/plasmacalendarintegration/eventdata_p.cpp 
PRE-CREATION 
  
src/declarativeimports/calendar/plasmacalendarintegration/plasmacalendarintegration_export.h
 PRE-CREATION 

Diff: https://git.reviewboard.kde.org/r/125817/diff/


Testing
---

I have a simple KHolidays based plugin written (patch should be up later today)
and patches in the Calendar applet.

Everything works as expected:
* the days are marked as containing an event
* the agenda part displays details of that event (name)


Thanks,

Martin Klapetek

___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel


Re: Review Request 125817: Add plugin system for Calendar events

2015-10-27 Thread Martin Klapetek

---
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/125817/
---

(Updated Oct. 27, 2015, 7:30 p.m.)


Review request for KDE Frameworks, Plasma and Daniel Vrátil.


Changes
---

Changes:
* uses QDate as the hash key
* uses dpointer for EventData
* added signals for eventModified and eventRemoved
* added eventColor property to set calendar colors
* improved the docs for isAllDay
* generated export header
* addressed the rest of the comments


Repository: plasma-framework


Description
---

This adds a simple plugin interface that can be subclassed
and provide events integration with Plasma Calendar applet.

It's asynchronous and I've kept it deliberately simple.
For now the Calendar tells the plugins which date range
is being displayed, the plugins load the data and then
emit the dataReady() signal containing the events.

The events are stored in a multihash for quick access
by the Calendar's agenda part but also for overall
easy-to-use (eg. in teh model data()).

The event data is stored in EventData class, which has
a pretty self-explanatory members, except perhaps the
"isMinor" one. The intention with this is to support
namedays, where in some countries the calendars have
different name every day. This is just a minor holiday
and as such should not mark the calendar grid, otherwise
the whole grid would be in a different color.

Putting the interface here might raise the question of
depending on plasma-framework, but plugins provided by
KDE can go to plasma-workspace and other 3rd party ones
would just have to live with it. I don't think it will
be a problem but if it turns out it is, we can rethink
the placement.


Diffs (updated)
-

  src/declarativeimports/calendar/CMakeLists.txt 40ead91 
  src/declarativeimports/calendar/calendarplugin.cpp bafe80c 
  src/declarativeimports/calendar/daysmodel.h a5bdac9 
  src/declarativeimports/calendar/daysmodel.cpp 2d059a8 
  src/declarativeimports/calendar/eventdatadecorator.h PRE-CREATION 
  src/declarativeimports/calendar/eventdatadecorator.cpp PRE-CREATION 
  src/declarativeimports/calendar/plasmacalendarintegration/CMakeLists.txt 
PRE-CREATION 
  
src/declarativeimports/calendar/plasmacalendarintegration/PlasmaCalendarIntegrationConfig.cmake.in
 PRE-CREATION 
  
src/declarativeimports/calendar/plasmacalendarintegration/calendareventsplugin.h
 PRE-CREATION 
  
src/declarativeimports/calendar/plasmacalendarintegration/calendareventsplugin.cpp
 PRE-CREATION 

Diff: https://git.reviewboard.kde.org/r/125817/diff/


Testing
---

I have a simple KHolidays based plugin written (patch should be up later today)
and patches in the Calendar applet.

Everything works as expected:
* the days are marked as containing an event
* the agenda part displays details of that event (name)


Thanks,

Martin Klapetek

___
Kde-frameworks-devel mailing list
Kde-frameworks-devel@kde.org
https://mail.kde.org/mailman/listinfo/kde-frameworks-devel