calview : Calendar view

The lino_xl.lib.calview plugin adds a calendar view.

A tested document

This is a tested document. The following instructions are used for initialization:

>>> from lino import startup
>>> startup('lino_book.projects.avanti1.settings.demo')
>>> from lino.api.doctest import *

Calendar views

class lino_xl.lib.calview.CalendarView

Base class for all calendar views (daily, weekly and monthly).

class lino_xl.lib.calview.DailyView

Shows a calendar navigator with a configurable daily view.

class lino_xl.lib.calview.WeeklyView

Shows a calendar navigator with a configurable weekly view.

class lino_xl.lib.calview.MonthlyView

Shows a calendar navigator with a configurable monthly view.

The daily planner

The daily planner is a table that shows an overview on all events of a day.

>>> rt.show(calview.DailyPlanner)
============ ====================================== ==========
 Time range   External                               Internal
------------ -------------------------------------- ----------
 *All day*    * ☐ rolf Absent for private reasons*
 *AM*         *08:30 ☑ romain Rencontre*
 *PM*
============ ====================================== ==========
class lino_xl.lib.calview.DailyPlanner

The virtual table used to render the daily planner.

class lino_xl.lib.calview.PlannerColumns

A choicelist that defines the columns to appear in the daily planner. This list can be modified locally.

A default configuration has two columns in the daily planner:

>>> rt.show(calview.PlannerColumns)
======= ========== ==========
 value   name       text
------- ---------- ----------
 10      external   External
 20      internal   Internal
======= ========== ==========
class lino_xl.lib.calview.DailyPlannerRow

A database object that represents one row of the daily planner. The default configuration has "AM", "PM" and "All day".

>>> rt.show(calview.DailyPlannerRows)
===== ============= ================== ================== ============ ==========
 No.   Designation   Designation (de)   Designation (fr)   Start time   End time
----- ------------- ------------------ ------------------ ------------ ----------
 1     AM            Vormittags         Avant-midi                      12:00:00
 2     PM            Nachmittags        Après-midi         12:00:00
===== ============= ================== ================== ============ ==========