// This is the SIP interface definition for QDns. // // Copyright (c) 2007 // Riverbank Computing Limited // // This file is part of PyQt. // // This copy of PyQt is free software; you can redistribute it and/or modify it // under the terms of the GNU General Public License as published by the Free // Software Foundation; either version 2, or (at your option) any later // version. // // PyQt is supplied in the hope that it will be useful, but WITHOUT ANY // WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS // FOR A PARTICULAR PURPOSE. See the GNU General Public License for more // details. // // You should have received a copy of the GNU General Public License along with // PyQt; see the file LICENSE. If not, write to the Free Software Foundation, // Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. %ExportedDoc QDns (Qt v2.2+) QDns is fully implemented. %End %If (Qt_DNS) %If (Qt_2_2_0 -) class QDns : QObject { %TypeHeaderCode #include %End public: enum RecordType { None, A, Aaaa, Mx, Srv, Cname, Ptr, Txt }; QDns(); QDns(const QString &,RecordType = A); QDns(const QHostAddress &,RecordType = A); virtual void setLabel(const QString &); virtual void setLabel(const QHostAddress &); QString label() const; virtual void setRecordType(RecordType = A); RecordType recordType() const; bool isWorking() const; QValueList addresses() const; class MailServer { public: MailServer(const QString & = QString::null,Q_UINT16 = 0); QString name; Q_UINT16 priority; }; QValueList mailServers() const; class Server { public: Server(const QString & = QString::null,Q_UINT16 = 0, Q_UINT16 = 0,Q_UINT16 = 0); QString name; Q_UINT16 priority; Q_UINT16 weight; Q_UINT16 port; }; QValueList servers() const; QStringList hostNames() const; QStringList texts() const; QString canonicalName() const; QStringList qualifiedNames() const; signals: void resultsReady(); }; %MappedType QValueList { %TypeHeaderCode #include %End %ConvertFromTypeCode // Convert to a Python list of QHostAddress instances. int i; PyObject *l; // Create the list. if ((l = PyList_New(sipCpp -> count())) == NULL) return NULL; // Get it. i = 0; QValueListConstIterator it; for (it = sipCpp -> begin(); it != sipCpp -> end(); ++it) { PyObject *tmobj; if ((tmobj = sipConvertFromNewInstance(new QHostAddress(*it),sipClass_QHostAddress,sipTransferObj)) == NULL || PyList_SetItem(l,i,tmobj) < 0) { Py_XDECREF(tmobj); Py_DECREF(l); return NULL; } ++i; } return l; %End %ConvertToTypeCode // At the moment this will never be called, so provide a null // implementation. if (sipIsErr == NULL) return PyList_Check(sipPy); PyErr_Format(PyExc_TypeError,"Converting to QValueList not yet implemented"); *sipIsErr = 1; return 0; %End }; %MappedType QValueList { %TypeHeaderCode #include %End %ConvertFromTypeCode // Convert to a Python list of QDns::MailServer instances. int i; PyObject *l; // Create the list. if ((l = PyList_New(sipCpp -> count())) == NULL) return NULL; // Get it. i = 0; QValueListConstIterator it; for (it = sipCpp -> begin(); it != sipCpp -> end(); ++it) { PyObject *tmobj; if ((tmobj = sipConvertFromNewInstance(new QDns::MailServer(*it),sipClass_QDns_MailServer,sipTransferObj)) == NULL || PyList_SetItem(l,i,tmobj) < 0) { Py_XDECREF(tmobj); Py_DECREF(l); return NULL; } ++i; } return l; %End %ConvertToTypeCode // At the moment this will never be called, so provide a null // implementation. if (sipIsErr == NULL) return PyList_Check(sipPy); PyErr_Format(PyExc_TypeError,"Converting to QValueList not yet implemented"); *sipIsErr = 1; return 0; %End }; %MappedType QValueList { %TypeHeaderCode #include %End %ConvertFromTypeCode // Convert to a Python list of QDns::Server instances. int i; PyObject *l; // Create the list. if ((l = PyList_New(sipCpp -> count())) == NULL) return NULL; // Get it. i = 0; QValueListConstIterator it; for (it = sipCpp -> begin(); it != sipCpp -> end(); ++it) { PyObject *tmobj; if ((tmobj = sipConvertFromNewInstance(new QDns::Server(*it),sipClass_QDns_Server,sipTransferObj)) == NULL || PyList_SetItem(l,i,tmobj) < 0) { Py_XDECREF(tmobj); Py_DECREF(l); return NULL; } ++i; } return l; %End %ConvertToTypeCode // At the moment this will never be called, so provide a null // implementation. if (sipIsErr == NULL) return PyList_Check(sipPy); PyErr_Format(PyExc_TypeError,"Converting to QValueList not yet implemented"); *sipIsErr = 1; return 0; %End }; %End %End