KDNSSD 5.109.0
domainmodel.h
1/*
2 This file is part of the KDE project
3
4 SPDX-FileCopyrightText: 2008 Jakub Stachowski <qbast@go2.pl>
5
6 SPDX-License-Identifier: LGPL-2.0-or-later
7*/
8
9#ifndef KDNSSDDOMAINMODEL_H
10#define KDNSSDDOMAINMODEL_H
11
12#include "kdnssd_export.h"
13#include <QAbstractItemModel>
14#include <memory>
15
16namespace KDNSSD
17{
18struct DomainModelPrivate;
19class DomainBrowser;
20
40class KDNSSD_EXPORT DomainModel : public QAbstractItemModel
41{
42 Q_OBJECT
43
44public:
59 explicit DomainModel(DomainBrowser *browser, QObject *parent = nullptr);
60
61 ~DomainModel() override;
62
64 int columnCount(const QModelIndex &parent = QModelIndex()) const override;
66 int rowCount(const QModelIndex &parent = QModelIndex()) const override;
68 QModelIndex parent(const QModelIndex &index) const override;
70 QModelIndex index(int row, int column, const QModelIndex &parent = QModelIndex()) const override;
72 QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override;
74 virtual bool hasIndex(int row, int column, const QModelIndex &parent) const;
75
76private:
77 std::unique_ptr<DomainModelPrivate> const d;
78 friend struct DomainModelPrivate;
79};
80
81}
82
83#endif
Browses recommended domains for browsing or publishing to.
Definition domainbrowser.h:44
Model for list of Zeroconf domains.
Definition domainmodel.h:41
int rowCount(const QModelIndex &parent=QModelIndex()) const override
int columnCount(const QModelIndex &parent=QModelIndex()) const override
QVariant data(const QModelIndex &index, int role=Qt::DisplayRole) const override
QModelIndex parent(const QModelIndex &index) const override
QModelIndex index(int row, int column, const QModelIndex &parent=QModelIndex()) const override
DomainModel(DomainBrowser *browser, QObject *parent=nullptr)
Creates a model for given domain browser and starts browsing for domains.
virtual bool hasIndex(int row, int column, const QModelIndex &parent) const