Eventviews
9#include "viewcalendar.h"
11#include <CalendarSupport/CellItem>
13#include <Akonadi/Item>
25 int mStartCellXLeft, mStartCellXRight;
26 int mStartCellYTop, mStartCellYBottom;
27 QPointer<AgendaItem> mFirstMultiItem;
28 QPointer<AgendaItem> mPrevMultiItem;
29 QPointer<AgendaItem> mNextMultiItem;
30 QPointer<AgendaItem> mLastMultiItem;
60class AgendaItem :
public QWidget,
public CalendarSupport::CellItem
68 const MultiViewCalendar::Ptr &calendar,
75 ~AgendaItem()
override;
77 [[nodiscard]]
int cellXLeft()
const
82 [[nodiscard]]
int cellXRight()
const
87 [[nodiscard]]
int cellYTop()
const
92 [[nodiscard]]
int cellYBottom()
const
97 [[nodiscard]]
int cellHeight()
const;
98 [[nodiscard]]
int cellWidth()
const;
100 [[nodiscard]]
int itemPos()
const
105 [[nodiscard]]
int itemCount()
const
110 void setCellXY(
int X,
int YTop,
int YBottom);
111 void setCellY(
int YTop,
int YBottom);
112 void setCellX(
int XLeft,
int XRight);
113 void setCellXRight(
int XRight);
124 void moveRelative(
int dx,
int dy);
137 void expandTop(
int dy,
const bool allowOverLimit =
false);
138 void expandBottom(
int dy);
139 void expandLeft(
int dx);
140 void expandRight(
int dx);
142 [[nodiscard]]
bool isMultiItem()
const;
144 AgendaItem::QPtr prevMoveItem()
const
146 return (mStartMoveInfo) ? (mStartMoveInfo->mPrevMultiItem) :
nullptr;
149 AgendaItem::QPtr nextMoveItem()
const
151 return (mStartMoveInfo) ? (mStartMoveInfo->mNextMultiItem) :
nullptr;
154 MultiItemInfo *moveInfo()
const
156 return mStartMoveInfo;
159 void setMultiItem(
const AgendaItem::QPtr &first,
const AgendaItem::QPtr &prev,
const AgendaItem::QPtr &next,
const AgendaItem::QPtr &last);
161 AgendaItem::QPtr prependMoveItem(
const AgendaItem::QPtr &);
163 AgendaItem::QPtr appendMoveItem(
const AgendaItem::QPtr &);
165 AgendaItem::QPtr removeMoveItem(
const AgendaItem::QPtr &);
167 AgendaItem::QPtr firstMultiItem()
const
169 return (mMultiItemInfo) ? (mMultiItemInfo->mFirstMultiItem) :
nullptr;
172 AgendaItem::QPtr prevMultiItem()
const
174 return (mMultiItemInfo) ? (mMultiItemInfo->mPrevMultiItem) :
nullptr;
177 AgendaItem::QPtr nextMultiItem()
const
179 return (mMultiItemInfo) ? (mMultiItemInfo->mNextMultiItem) :
nullptr;
182 AgendaItem::QPtr lastMultiItem()
const
184 return (mMultiItemInfo) ? (mMultiItemInfo->mLastMultiItem) :
nullptr;
187 [[nodiscard]]
bool dissociateFromMultiItem();
196 [[nodiscard]]
QDateTime occurrenceDateTime()
const
198 return mOccurrenceDateTime;
201 [[nodiscard]]
QDate occurrenceDate()
const;
206 void setText(
const QString &text)
211 [[nodiscard]]
QString text()
const
218 void addConflictItem(
const AgendaItem::QPtr &ci);
220 [[nodiscard]]
QString label()
const override;
223 bool overlaps(CellItem *o)
const override;
225 void setResourceColor(
const QColor &color)
227 mResourceColor = color;
230 [[nodiscard]]
QColor resourceColor()
const
232 return mResourceColor;
236 void removeAgendaItem(
const AgendaItem::QPtr &);
237 void showAgendaItem(
const AgendaItem::QPtr &);
241 void select(
bool selected =
true);
242 void addAttendee(
const QString &);
246 bool event(
QEvent *event)
override;
255 void resetMovePrivate();
256 void endMovePrivate();
259 MultiItemInfo *mStartMoveInfo =
nullptr;
264 void paintIcon(
QPainter *p,
int &
x,
int y,
int ft);
267 void paintIcons(
QPainter *p,
int &
x,
int y,
int ft);
279 [[nodiscard]]
QColor getCategoryColor()
const;
280 [[nodiscard]]
QColor getFrameColor(
const QColor &resourceColor,
const QColor &categoryColor)
const;
281 [[nodiscard]]
QColor getBackgroundColor(
const QColor &resourceColor,
const QColor &categoryColor)
const;
283 int mCellXLeft, mCellXRight;
284 int mCellYTop, mCellYBottom;
287 MultiViewCalendar::Ptr mCalendar;
291 bool mCloned =
false;
309 MultiItemInfo *mMultiItemInfo =
nullptr;
This class describes the widgets that represent the various calendar items in the agenda view.
void setOccurrenceDateTime(const QDateTime &qd)
Update the date of this item's occurrence (not in the event)
bool overlaps(CellItem *o) const override
Tells whether this item overlaps item o.
void endMove()
End the movement (i.e.
void expandTop(int dy, const bool allowOverLimit=false)
Expands the item's top.
void startMovePrivate()
private movement functions.
void resetMove()
Reset to original values.
void startMove()
Start movement.
EventView is the abstract base class from which all other calendar views for event data are derived.
QSharedPointer< Incidence > Ptr
Namespace EventViews provides facilities for displaying incidences, including events,...
QObject * parent() const const
This file is part of the KDE documentation.
Documentation copyright © 1996-2025 The KDE developers.
Generated on Fri Feb 21 2025 11:47:03 by
doxygen 1.13.2 written
by
Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.