ServiceModel Class Reference
from PyKDE4.dnssd import *
Inherits: QAbstractItemModel → QObject
Namespace: DNSSD
Detailed Description
\class ServiceModel servicemodel.h DNSSD/ServiceModel
ServiceModel implements Qt Model interface around ServiceBrowser to allow easy integration
of service discovery into GUI.
Example of combo box showing list of HTTP servers on local network:
DNSSD.ServiceModel* m=new ServiceModel(new DNSSD.ServiceBrowser("_http._tcp"));
QComboBox *c=new QComboBox();
c->setModel(m);
After user makes the selection, application typically needs pointer to selected service
in order to get host name and port. RemoteService.Ptr can be obtained from QModelIndex
using:
void onSelected(const QModelIndex& selection) {
DNSSD.RemoteService.Ptr service=selection.data(DNSSD.ServiceModel.ServicePtrRole).
value<DNSSD.RemoteService.Ptr>();
- Since:
- 4.1
Model for list of Zeroconf services
- Author:
- Jakub Stachowski
Enumerations |
AdditionalRoles | { ServicePtrRole } |
ModelColumns | { ServiceName, Host, Port } |
Methods |
| __init__ (self, DNSSD.ServiceBrowser browser, QObject parent=0) |
int | columnCount (self, QModelIndex parent=QModelIndex()) |
QVariant | data (self, QModelIndex index, int role=Qt.DisplayRole) |
bool | hasIndex (self, int row, int column, QModelIndex parent) |
QVariant | headerData (self, int section, Qt.Orientation orientation, int role=Qt.DisplayRole) |
QModelIndex | index (self, int row, int column, QModelIndex parent=QModelIndex()) |
QModelIndex | parent (self, QModelIndex index) |
int | rowCount (self, QModelIndex parent=QModelIndex()) |
Method Documentation
Creates model for given service browses and starts browsing for services. The model becomes parent of the
browser so there is no need to delete it afterwards.
int columnCount |
( |
self, |
|
|
|
QModelIndex |
parent=QModelIndex() |
|
) |
|
|
|
bool hasIndex |
( |
self, |
|
|
|
int |
row, |
|
|
int |
column, |
|
|
QModelIndex |
parent |
|
) |
|
|
|
int rowCount |
( |
self, |
|
|
|
QModelIndex |
parent=QModelIndex() |
|
) |
|
|
|
Enumeration Documentation
- Enumerator:
-
ServicePtrRole = 0xA06519DE | |
Default columns for this model. If service browser is not set to resolve automatically, then the model
has only one column (service name).
- Enumerator:
-
ServiceName = 0 | |
Host = 1 | |
Port = 2 | |