Plasma-workspace

windowtasksmodel.h
1/*
2 SPDX-FileCopyrightText: 2016 Eike Hein <hein@kde.org>
3
4 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
5*/
6
7#pragma once
8
9#include <QIdentityProxyModel>
10
11#include <memory>
12
13#include "abstracttasksproxymodeliface.h"
14
15#include "taskmanager_export.h"
16
17namespace TaskManager
18{
19/**
20 * @short A window tasks model.
21 *
22 * This model presents tasks sourced from window data retrieved from the
23 * windowing server the host process is connected to. The underlying
24 * windowing system is abstracted away.
25 *
26 * @see WaylandTasksModel
27 * @see XWindowTasksModel
28 *
29 * @author Eike Hein <hein@kde.org>
30 **/
31
32class TASKMANAGER_EXPORT WindowTasksModel : public QIdentityProxyModel, public AbstractTasksProxyModelIface
33{
34 Q_OBJECT
35
36public:
37 explicit WindowTasksModel(QObject *parent = nullptr);
38 ~WindowTasksModel() override;
39
40 QHash<int, QByteArray> roleNames() const override;
41
42protected:
43 QModelIndex mapIfaceToSource(const QModelIndex &index) const override;
44
45private:
46 class Private;
47 std::unique_ptr<Private> d;
48};
49
50}
Pure method interface for tasks model implementations.
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Tue Mar 26 2024 11:17:42 by doxygen 1.10.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.