Incidenceeditor

visualfreebusywidget.h
1/*
2 SPDX-FileCopyrightText: 2010 Casey Link <unnamedrambler@gmail.com>
3 SPDX-FileCopyrightText: 2009-2010 Klaralvdalens Datakonsult AB, a KDAB Group company <info@kdab.net>
4
5 SPDX-License-Identifier: LGPL-2.0-or-later
6*/
7
8#pragma once
9
10#include <QDateTime>
11#include <QWidget>
12
13namespace KGantt
14{
15class DateTimeGrid;
16class GraphicsView;
17}
18
19namespace CalendarSupport
20{
21class FreeBusyItemModel;
22}
23
24class QComboBox;
25class QTreeView;
26
27namespace IncidenceEditorNG
28{
29class FreeBusyGanttProxyModel;
30class RowController;
31
32class VisualFreeBusyWidget : public QWidget
33{
35public:
36 explicit VisualFreeBusyWidget(CalendarSupport::FreeBusyItemModel *model, int spacing = 8, QWidget *parent = nullptr);
37 ~VisualFreeBusyWidget() override;
38
39public Q_SLOTS:
40 void slotUpdateIncidenceStartEnd(const QDateTime &, const QDateTime &);
41
43 void dateTimesChanged(const QDateTime &, const QDateTime &);
44 void manualReload();
45
46protected Q_SLOTS:
47 void slotScaleChanged(int);
48 void slotCenterOnStart();
49 void slotZoomToTime();
50 void slotPickDate();
51 void showAttendeeStatusMenu();
52 void slotIntervalColorRectangleMoved(const QDateTime &start, const QDateTime &end);
53
54private:
55 void splitterMoved();
56 KGantt::GraphicsView *mGanttGraphicsView = nullptr;
57 QTreeView *mLeftView = nullptr;
58 RowController *mRowController = nullptr;
59 KGantt::DateTimeGrid *mGanttGrid = nullptr;
60
61 QComboBox *mScaleCombo = nullptr;
62 FreeBusyGanttProxyModel *mModel = nullptr;
63
64 QDateTime mDtStart, mDtEnd;
65};
66}
Q_SCRIPTABLE Q_NOREPLY void start()
Q_OBJECTQ_OBJECT
Q_SIGNALSQ_SIGNALS
Q_SLOTSQ_SLOTS
QObject * parent() const const
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Mon Nov 18 2024 12:17:23 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.