QCalendar
v5.2.0
QCalendarAgenda

QCalendarAgenda presents days as compact columns or agenda lanes instead of a time-grid. It is useful when users need to scan a range of dates, compare day content, or review lightweight planning data without the vertical interval structure of a day calendar.

Use this calendar when the date itself is the main grouping and exact start/end times are secondary. Agenda views work well for planners, availability summaries, simple booking overviews, and dashboards where several days should stay visible at once.

Loading QCalendarAgenda API...

Scroll Events

Listen to @scroll for live updates from the internal scroll area and @scrollend for one update after scrolling settles. Both events receive a CalendarScrollEvent object with the native event, scrolling target, scrollLeft, scrollTop, scrollWidth, scrollHeight, clientWidth, and clientHeight.

When no-scroll is enabled, listen for scroll events on the external scrolling element instead.

Date Type

Use date-type when the agenda should work from a specific anchor date instead of relying on the default date handling. This is useful when your app stores dates in a normalized format and passes them into the calendar.

Date Type


Dark

Use the Toggle Dark Mode control to compare the agenda calendar in light and dark styling without changing the global site theme.

Dark


Alignment

You can use the properties date-header, date-align and weekday-align to manipulate how the header area looks.

Alignment


Cell Width

You can specify the cell-width property to make your calendar extend beyond its horizontal boundaries.

The calendar goes into a special sticky mode when this happens so you can scroll vertically and/or horizontally.

This example also uses the max-days property.

Cell Width


Scroll to Date

Use scrollToDate() to bring a date from the currently rendered range into view. The method returns false when the date is invalid or outside that range; those requests are not retained. A valid request made from a parent’s onMounted() while date columns are still registering is completed after the current render flush.

Column Count

The column-count property allows for a single day to be displayed multiple times.

Column Count


Column Options

The column-options property allows you to define additional left or right columns.

Column Options


Day Week - Max. Days

Use max-days to limit how many days render in a day/week style agenda. This keeps dense agenda layouts readable when the surrounding page has limited horizontal space.

Day Week - Max Days


Disabled Before After

All days before and after the current day have been disabled with the properties disabled-before and disabled-after.

Disabled Before After


Disabled Days

The example anchors its date to a visible week and disables a short run of visible days with the disabled-days property.

The first example uses an array of dates to disable each specific date.

The second example uses the object form with from, to, color, and textColor to create a reservation-style disabled range.

Disabled Days


Disabled Weekdays

The weekends have been disabled with the disabled-weekdays property.

Disabled Weekdays


First Day Monday

Set first-day-monday when users expect weeks to start on Monday instead of Sunday. The weekday headers and rendered date range shift together.

First Day Monday


Five Day Workweek

Use weekdays to render only the days that matter for the agenda. This example shows a Monday through Friday calendar without weekend columns.

Five Day Workweek


Locale

Locale affects the generated weekday and date labels. Use it when the calendar should follow the same language and regional formatting as your app.

Locale


No Active Date

Use no-active-date when the agenda should avoid highlighting the model date as the active day. This is useful for read-only or summary views where selection state would be misleading.

No Active Date


Now

The current date has been set to tomorrow via the now property.

Now


Theme

The theme example shows how calendar CSS variables can be changed together to create a branded visual style without rewriting component internals.

Theme


Transitions

Transitions animate the agenda content when moving between date ranges. Use them when navigation should feel spatial instead of abruptly swapping the visible days.

Transitions


Recipes

Planner

This is a rudimentary Planner using QCalendarAgenda.

TIP

On this example, you can try out the Drag & Drop.

Planner


Server Data

This recipe keeps the calendar empty until you click Load visible range. The button simulates waiting for a server response, then fills the visible calendar with data returned for the current range.

Server Data


Calendar Adapters

Agenda views can use Timestamp adapters for native labels and native-keyed data while keeping the same adapter-native date contract as the rest of QCalendar.

This example renders Islamic Civil (Hijri), Indian National (Saka), Hebrew, or Persian labels inside the header and day slots. It is useful for planning views where users need native calendar context, while Gregorian interop remains available through slot identity metadata.

Calendar Adapters