Skip to main content

QCustomAgendaList

QCustomAgendaList

A schedule / event timeline list.

The day-plan card (Running / Cycling / Gym / Swimming): each row has a left CONNECTOR RAIL with a per-item status marker, a time range, a bold title and a muted subtitle (location). Status is done / active / pending (colour + painted marker: a check, a filled dot, a hollow ring - no glyph fonts). The active row gets a highlighted rounded background.

Feed rows with setItems([{time, endTime, title, subtitle, status, color}]) or the itemsJson Designer property. Painted with QPainter; rows FLEX to a row height that fits the text, so it sits happily inside a QScrollArea. Colours are qproperties so they flip with the theme. Signal: itemClicked(index).

At a glance

TierFree (GPLv3)
Importfrom Custom_Widgets.QCustomAgendaList import QCustomAgendaList
Qt DesignerYes — drag it from the palette

Quick start

from Custom_Widgets.QCustomAgendaList import QCustomAgendaList

widget = QCustomAgendaList()

Dark theme

Colours come from the design tokens, so the widget follows the app theme with no extra work.

QCustomAgendaList in dark theme

Properties

Every property below is settable in code and in Qt Designer.

PropertyTypeDefault
itemsJsonstring
rowHeightint0
railColorcolor#2b3040
doneColorcolor#22c07e
activeColorcolor#f59e0b
pendingColorcolor#8b90a0
titleColorcolor#f4f6fb
subtitleColorcolor#8b90a0
timeColorcolor#aab2bd
activeBgColorcolor#1e2330
showRailboolTrue

Signals

Signal
itemClicked(int)

Methods

MethodDescription
activeBgColor(*args, **kwargs)Active bg color.
activeColor(*args, **kwargs)Active color.
doneColor(*args, **kwargs)Done color.
heightForWidth(w)Height for width.
itemClicked(...)Item clicked.
items()Items.
itemsJson(*args, **kwargs)Items json.
pendingColor(*args, **kwargs)Pending color.
railColor(*args, **kwargs)Rail color.
rowHeight(*args, **kwargs)Row height.
setItems(items)Set the items.
showRail(*args, **kwargs)Show the rail.
subtitleColor(*args, **kwargs)Subtitle color.
timeColor(*args, **kwargs)Time color.
titleColor(*args, **kwargs)Title color.

Theming

Colours come from the design tokens, so they follow the active theme. Roles used: accent, up.

See Design tokens.

AnalogGaugeWidget · QCustomAlert · QCustomAvatar · QCustomAvatarGroup · QCustomBadge · QCustomCard · QCustomChip · QCustomClockLabel