1 /****************************************************************************
3 ** Copyright (C) 2008 Urs Wolfer <uwolfer @ kde.org>
5 ** This file is part of KDE.
7 ** This program is free software; you can redistribute it and/or modify
8 ** it under the terms of the GNU General Public License as published by
9 ** the Free Software Foundation; either version 2 of the License, or
10 ** (at your option) any later version.
12 ** This program is distributed in the hope that it will be useful,
13 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
14 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 ** GNU General Public License for more details.
17 ** You should have received a copy of the GNU General Public License
18 ** along with this program; see the file COPYING. If not, write to
19 ** the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
20 ** Boston, MA 02110-1301, USA.
22 ****************************************************************************/
24 #ifndef REMOTEDESKTOPSMODEL_H
25 #define REMOTEDESKTOPSMODEL_H
27 #include <QAbstractItemModel>
30 class KBookmarkManager
;
31 class RemoteDesktopsItem
;
36 class RemoteDesktopsModel
: public QAbstractItemModel
41 RemoteDesktopsModel(QObject
*parent
);
42 ~RemoteDesktopsModel();
44 QVariant
data(const QModelIndex
&index
, int role
) const;
45 Qt::ItemFlags
flags(const QModelIndex
&index
) const;
46 QVariant
headerData(int section
, Qt::Orientation orientation
,
47 int role
= Qt::DisplayRole
) const;
48 QModelIndex
index(int row
, int column
,
49 const QModelIndex
&parent
= QModelIndex()) const;
50 QModelIndex
parent(const QModelIndex
&index
) const;
51 int rowCount(const QModelIndex
&parent
= QModelIndex()) const;
52 int columnCount(const QModelIndex
&parent
= QModelIndex()) const;
55 void buildModelFromBookmarkGroup(const KBookmarkGroup
&group
, RemoteDesktopsItem
*item
);
56 void scanLocalNetwork();
58 KBookmarkManager
*m_manager
;
59 RemoteDesktopsItem
*rootItem
;
61 RemoteDesktopsItem
*localNetworkItem
;
63 KProcess
*m_scanProcess
;