You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
715 lines
15 KiB
715 lines
15 KiB
14 years ago
|
//
|
||
|
// Copyright 2006 Jim Bublitz <jbublitz@nwinternet.com>
|
||
|
// Earlier copyrights 1998 - 2005 Jim Bublitz and/or Phil Thompson
|
||
|
// may also apply
|
||
|
|
||
|
|
||
|
// Generated by preSip
|
||
|
// module kio version KDE 3.5.3
|
||
|
|
||
|
|
||
|
// This software 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 of
|
||
|
// the License, or (at your option) any later version.
|
||
|
//
|
||
|
// This software is distributed 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 this library; see the file COPYING.
|
||
|
// If not, write to the Free Software Foundation, Inc.,
|
||
|
// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||
|
|
||
|
%ModuleHeaderCode
|
||
|
#include <kio/global.h>
|
||
|
%End
|
||
|
|
||
|
namespace KIO
|
||
|
{
|
||
|
typedef long long fileoffset_t;
|
||
|
typedef unsigned long long filesize_t;
|
||
|
QString convertSize (KIO::filesize_t);
|
||
|
|
||
|
%If ( KDE_3_5_0 - )
|
||
|
QString convertSizeWithBytes (KIO::filesize_t);
|
||
|
%End
|
||
|
|
||
|
QString number (KIO::filesize_t);
|
||
|
QString convertSizeFromKB (KIO::filesize_t);
|
||
|
|
||
|
%If ( KDE_3_4_0 - )
|
||
|
uint calculateRemainingSeconds (KIO::filesize_t, KIO::filesize_t, KIO::filesize_t);
|
||
|
QString convertSeconds (uint);
|
||
|
%End
|
||
|
|
||
|
QTime calculateRemaining (KIO::filesize_t, KIO::filesize_t, KIO::filesize_t);
|
||
|
QString itemsSummaryString (uint, uint, uint, KIO::filesize_t, bool);
|
||
|
QString encodeFileName (const QString&);
|
||
|
QString decodeFileName (const QString&);
|
||
|
|
||
|
%If ( KDE_3_2_0 - )
|
||
|
|
||
|
enum Command
|
||
|
{
|
||
|
CMD_HOST,
|
||
|
CMD_CONNECT,
|
||
|
CMD_DISCONNECT,
|
||
|
CMD_SLAVE_STATUS,
|
||
|
CMD_SLAVE_CONNECT,
|
||
|
CMD_SLAVE_HOLD,
|
||
|
CMD_NONE,
|
||
|
CMD_TESTDIR,
|
||
|
CMD_GET,
|
||
|
CMD_PUT,
|
||
|
CMD_STAT,
|
||
|
CMD_MIMETYPE,
|
||
|
CMD_LISTDIR,
|
||
|
CMD_MKDIR,
|
||
|
CMD_RENAME,
|
||
|
CMD_COPY,
|
||
|
CMD_DEL,
|
||
|
CMD_CHMOD,
|
||
|
CMD_SPECIAL,
|
||
|
CMD_USERPASS,
|
||
|
CMD_REPARSECONFIGURATION,
|
||
|
CMD_META_DATA,
|
||
|
CMD_SYMLINK,
|
||
|
CMD_SUBURL,
|
||
|
CMD_MESSAGEBOXANSWER,
|
||
|
CMD_RESUMEANSWER,
|
||
|
CMD_CONFIG,
|
||
|
CMD_MULTI_GET
|
||
|
};
|
||
|
|
||
|
%End
|
||
|
|
||
|
|
||
|
%If ( KDE_3_1_0 - )
|
||
|
|
||
|
enum Error
|
||
|
{
|
||
|
ERR_CANNOT_OPEN_FOR_READING,
|
||
|
ERR_CANNOT_OPEN_FOR_WRITING,
|
||
|
ERR_CANNOT_LAUNCH_PROCESS,
|
||
|
ERR_INTERNAL,
|
||
|
ERR_MALFORMED_URL,
|
||
|
ERR_UNSUPPORTED_PROTOCOL,
|
||
|
ERR_NO_SOURCE_PROTOCOL,
|
||
|
ERR_UNSUPPORTED_ACTION,
|
||
|
ERR_IS_DIRECTORY,
|
||
|
ERR_IS_FILE,
|
||
|
ERR_DOES_NOT_EXIST,
|
||
|
ERR_FILE_ALREADY_EXIST,
|
||
|
ERR_DIR_ALREADY_EXIST,
|
||
|
ERR_UNKNOWN_HOST,
|
||
|
ERR_ACCESS_DENIED,
|
||
|
ERR_WRITE_ACCESS_DENIED,
|
||
|
ERR_CANNOT_ENTER_DIRECTORY,
|
||
|
ERR_PROTOCOL_IS_NOT_A_FILESYSTEM,
|
||
|
ERR_CYCLIC_LINK,
|
||
|
ERR_USER_CANCELED,
|
||
|
ERR_CYCLIC_COPY,
|
||
|
ERR_COULD_NOT_CREATE_SOCKET,
|
||
|
ERR_COULD_NOT_CONNECT,
|
||
|
ERR_CONNECTION_BROKEN,
|
||
|
ERR_NOT_FILTER_PROTOCOL,
|
||
|
ERR_COULD_NOT_MOUNT,
|
||
|
ERR_COULD_NOT_UNMOUNT,
|
||
|
ERR_COULD_NOT_READ,
|
||
|
ERR_COULD_NOT_WRITE,
|
||
|
ERR_COULD_NOT_BIND,
|
||
|
ERR_COULD_NOT_LISTEN,
|
||
|
ERR_COULD_NOT_ACCEPT,
|
||
|
ERR_COULD_NOT_LOGIN,
|
||
|
ERR_COULD_NOT_STAT,
|
||
|
ERR_COULD_NOT_CLOSEDIR,
|
||
|
ERR_COULD_NOT_MKDIR,
|
||
|
ERR_COULD_NOT_RMDIR,
|
||
|
ERR_CANNOT_RESUME,
|
||
|
ERR_CANNOT_RENAME,
|
||
|
ERR_CANNOT_CHMOD,
|
||
|
ERR_CANNOT_DELETE,
|
||
|
ERR_SLAVE_DIED,
|
||
|
ERR_OUT_OF_MEMORY,
|
||
|
ERR_UNKNOWN_PROXY_HOST,
|
||
|
ERR_COULD_NOT_AUTHENTICATE,
|
||
|
ERR_ABORTED,
|
||
|
ERR_INTERNAL_SERVER,
|
||
|
ERR_SERVER_TIMEOUT,
|
||
|
ERR_SERVICE_NOT_AVAILABLE,
|
||
|
ERR_UNKNOWN,
|
||
|
ERR_UNKNOWN_INTERRUPT,
|
||
|
ERR_CANNOT_DELETE_ORIGINAL,
|
||
|
ERR_CANNOT_DELETE_PARTIAL,
|
||
|
ERR_CANNOT_RENAME_ORIGINAL,
|
||
|
ERR_CANNOT_RENAME_PARTIAL,
|
||
|
ERR_NEED_PASSWD,
|
||
|
ERR_CANNOT_SYMLINK,
|
||
|
ERR_NO_CONTENT,
|
||
|
ERR_DISK_FULL,
|
||
|
ERR_IDENTICAL_FILES,
|
||
|
ERR_SLAVE_DEFINED,
|
||
|
ERR_UPGRADE_REQUIRED,
|
||
|
ERR_POST_DENIED
|
||
|
};
|
||
|
|
||
|
%End
|
||
|
|
||
|
QString buildErrorString (int, const QString&);
|
||
|
//ig QString buildHTMLErrorString (int, const QString&, const KURL* = 0, int = -1);
|
||
|
QByteArray rawErrorDetail (int, const QString&, const KURL* = 0, int = -1);
|
||
|
|
||
|
%If ( KDE_3_2_0 - )
|
||
|
QString unsupportedActionErrorString (const QString&, int);
|
||
|
|
||
|
%If ( KDE_3_5_1 - )
|
||
|
|
||
|
enum UDSAtomTypes
|
||
|
{
|
||
|
UDS_STRING,
|
||
|
UDS_LONG,
|
||
|
UDS_TIME,
|
||
|
UDS_SIZE,
|
||
|
UDS_SIZE_LARGE,
|
||
|
UDS_USER,
|
||
|
UDS_ICON_NAME,
|
||
|
UDS_GROUP,
|
||
|
UDS_EXTRA,
|
||
|
UDS_NAME,
|
||
|
UDS_LOCAL_PATH,
|
||
|
UDS_HIDDEN,
|
||
|
UDS_EXTENDED_ACL,
|
||
|
UDS_ACL_STRING,
|
||
|
UDS_DEFAULT_ACL_STRING,
|
||
|
UDS_ACCESS,
|
||
|
UDS_MODIFICATION_TIME,
|
||
|
UDS_ACCESS_TIME,
|
||
|
UDS_CREATION_TIME,
|
||
|
UDS_FILE_TYPE,
|
||
|
UDS_LINK_DEST,
|
||
|
UDS_URL,
|
||
|
UDS_MIME_TYPE,
|
||
|
UDS_GUESSED_MIME_TYPE,
|
||
|
UDS_XML_PROPERTIES
|
||
|
};
|
||
|
|
||
|
%End
|
||
|
|
||
|
%End
|
||
|
|
||
|
|
||
|
%If ( KDE_3_0_1 - )
|
||
|
|
||
|
enum CacheControl
|
||
|
{
|
||
|
CC_CacheOnly,
|
||
|
CC_Cache,
|
||
|
CC_Verify,
|
||
|
CC_Refresh,
|
||
|
CC_Reload
|
||
|
};
|
||
|
|
||
|
%End
|
||
|
|
||
|
KIO::CacheControl parseCacheControl (const QString&);
|
||
|
QString getCacheControlString (KIO::CacheControl);
|
||
|
QString findDeviceMountPoint (const QString&);
|
||
|
QString findPathMountPoint (const QString&);
|
||
|
bool probably_slow_mounted (const QString&);
|
||
|
|
||
|
%If ( KDE_3_1_0 - )
|
||
|
bool manually_mounted (const QString&);
|
||
|
|
||
|
%If ( KDE_3_2_0 - )
|
||
|
|
||
|
enum FileSystemFlag
|
||
|
{
|
||
|
SupportsChmod,
|
||
|
SupportsChown,
|
||
|
SupportsUTime,
|
||
|
SupportsSymlinks,
|
||
|
CaseInsensitive
|
||
|
};
|
||
|
|
||
|
bool testFileSystemFlag (const QString&, KIO::FileSystemFlag);
|
||
|
%End
|
||
|
|
||
|
%End
|
||
|
|
||
|
|
||
|
class UDSAtom
|
||
|
{
|
||
|
%TypeHeaderCode
|
||
|
#include <global.h>
|
||
|
%End
|
||
|
|
||
|
|
||
|
public:
|
||
|
QString m_str;
|
||
|
long m_long;
|
||
|
uint m_uds;
|
||
|
|
||
|
}; // class UDSAtom
|
||
|
|
||
|
//ig typedef QValueList<KIO::UDSAtom> UDSEntry;
|
||
|
//ig typedef QValueList<KIO::UDSEntry> UDSEntryList;
|
||
|
//ig typedef QValueListIterator<UDSEntry> UDSEntryListIterator;
|
||
|
//ig typedef QValueListConstIterator<UDSEntry> UDSEntryListConstIterator;
|
||
|
|
||
|
%If ( KDE_3_4_0 - KDE_3_5_1 )
|
||
|
|
||
|
enum UDSAtomTypes
|
||
|
{
|
||
|
UDS_STRING,
|
||
|
UDS_LONG,
|
||
|
UDS_TIME,
|
||
|
UDS_SIZE,
|
||
|
UDS_SIZE_LARGE,
|
||
|
UDS_USER,
|
||
|
UDS_ICON_NAME,
|
||
|
UDS_GROUP,
|
||
|
UDS_EXTRA,
|
||
|
UDS_NAME,
|
||
|
UDS_LOCAL_PATH,
|
||
|
UDS_ACCESS,
|
||
|
UDS_MODIFICATION_TIME,
|
||
|
UDS_ACCESS_TIME,
|
||
|
UDS_CREATION_TIME,
|
||
|
UDS_FILE_TYPE,
|
||
|
UDS_LINK_DEST,
|
||
|
UDS_URL,
|
||
|
UDS_MIME_TYPE,
|
||
|
UDS_GUESSED_MIME_TYPE,
|
||
|
UDS_XML_PROPERTIES
|
||
|
};
|
||
|
|
||
|
%End
|
||
|
|
||
|
|
||
|
%If ( KDE_3_2_0 - KDE_3_4_0 )
|
||
|
|
||
|
enum UDSAtomTypes
|
||
|
{
|
||
|
UDS_STRING,
|
||
|
UDS_LONG,
|
||
|
UDS_TIME,
|
||
|
UDS_SIZE,
|
||
|
UDS_SIZE_LARGE,
|
||
|
UDS_USER,
|
||
|
UDS_ICON_NAME,
|
||
|
UDS_GROUP,
|
||
|
UDS_EXTRA,
|
||
|
UDS_NAME,
|
||
|
UDS_ACCESS,
|
||
|
UDS_MODIFICATION_TIME,
|
||
|
UDS_ACCESS_TIME,
|
||
|
UDS_CREATION_TIME,
|
||
|
UDS_FILE_TYPE,
|
||
|
UDS_LINK_DEST,
|
||
|
UDS_URL,
|
||
|
UDS_MIME_TYPE,
|
||
|
UDS_GUESSED_MIME_TYPE,
|
||
|
UDS_XML_PROPERTIES
|
||
|
};
|
||
|
|
||
|
%End
|
||
|
|
||
|
|
||
|
%If ( KDE_3_1_0 - KDE_3_2_0 )
|
||
|
|
||
|
enum UDSAtomTypes
|
||
|
{
|
||
|
UDS_STRING,
|
||
|
UDS_LONG,
|
||
|
UDS_TIME,
|
||
|
UDS_SIZE,
|
||
|
UDS_SIZE_LARGE,
|
||
|
UDS_USER,
|
||
|
UDS_GROUP,
|
||
|
UDS_NAME,
|
||
|
UDS_ACCESS,
|
||
|
UDS_MODIFICATION_TIME,
|
||
|
UDS_ACCESS_TIME,
|
||
|
UDS_CREATION_TIME,
|
||
|
UDS_FILE_TYPE,
|
||
|
UDS_LINK_DEST,
|
||
|
UDS_URL,
|
||
|
UDS_MIME_TYPE,
|
||
|
UDS_GUESSED_MIME_TYPE,
|
||
|
UDS_XML_PROPERTIES
|
||
|
};
|
||
|
|
||
|
%End
|
||
|
|
||
|
|
||
|
%If ( - KDE_3_1_0 )
|
||
|
|
||
|
enum UDSAtomTypes
|
||
|
{
|
||
|
UDS_STRING,
|
||
|
UDS_LONG,
|
||
|
UDS_TIME,
|
||
|
UDS_SIZE,
|
||
|
UDS_SIZE_LARGE,
|
||
|
UDS_USER,
|
||
|
UDS_GROUP,
|
||
|
UDS_NAME,
|
||
|
UDS_ACCESS,
|
||
|
UDS_MODIFICATION_TIME,
|
||
|
UDS_ACCESS_TIME,
|
||
|
UDS_CREATION_TIME,
|
||
|
UDS_FILE_TYPE,
|
||
|
UDS_LINK_DEST,
|
||
|
UDS_URL,
|
||
|
UDS_MIME_TYPE,
|
||
|
UDS_GUESSED_MIME_TYPE
|
||
|
};
|
||
|
|
||
|
|
||
|
enum Error
|
||
|
{
|
||
|
ERR_CANNOT_OPEN_FOR_READING,
|
||
|
ERR_CANNOT_OPEN_FOR_WRITING,
|
||
|
ERR_CANNOT_LAUNCH_PROCESS,
|
||
|
ERR_INTERNAL,
|
||
|
ERR_MALFORMED_URL,
|
||
|
ERR_UNSUPPORTED_PROTOCOL,
|
||
|
ERR_NO_SOURCE_PROTOCOL,
|
||
|
ERR_UNSUPPORTED_ACTION,
|
||
|
ERR_IS_DIRECTORY,
|
||
|
ERR_IS_FILE,
|
||
|
ERR_DOES_NOT_EXIST,
|
||
|
ERR_FILE_ALREADY_EXIST,
|
||
|
ERR_DIR_ALREADY_EXIST,
|
||
|
ERR_UNKNOWN_HOST,
|
||
|
ERR_ACCESS_DENIED,
|
||
|
ERR_WRITE_ACCESS_DENIED,
|
||
|
ERR_CANNOT_ENTER_DIRECTORY,
|
||
|
ERR_PROTOCOL_IS_NOT_A_FILESYSTEM,
|
||
|
ERR_CYCLIC_LINK,
|
||
|
ERR_USER_CANCELED,
|
||
|
ERR_CYCLIC_COPY,
|
||
|
ERR_COULD_NOT_CREATE_SOCKET,
|
||
|
ERR_COULD_NOT_CONNECT,
|
||
|
ERR_CONNECTION_BROKEN,
|
||
|
ERR_NOT_FILTER_PROTOCOL,
|
||
|
ERR_COULD_NOT_MOUNT,
|
||
|
ERR_COULD_NOT_UNMOUNT,
|
||
|
ERR_COULD_NOT_READ,
|
||
|
ERR_COULD_NOT_WRITE,
|
||
|
ERR_COULD_NOT_BIND,
|
||
|
ERR_COULD_NOT_LISTEN,
|
||
|
ERR_COULD_NOT_ACCEPT,
|
||
|
ERR_COULD_NOT_LOGIN,
|
||
|
ERR_COULD_NOT_STAT,
|
||
|
ERR_COULD_NOT_CLOSEDIR,
|
||
|
ERR_COULD_NOT_MKDIR,
|
||
|
ERR_COULD_NOT_RMDIR,
|
||
|
ERR_CANNOT_RESUME,
|
||
|
ERR_CANNOT_RENAME,
|
||
|
ERR_CANNOT_CHMOD,
|
||
|
ERR_CANNOT_DELETE,
|
||
|
ERR_SLAVE_DIED,
|
||
|
ERR_OUT_OF_MEMORY,
|
||
|
ERR_UNKNOWN_PROXY_HOST,
|
||
|
ERR_COULD_NOT_AUTHENTICATE,
|
||
|
ERR_ABORTED,
|
||
|
ERR_INTERNAL_SERVER,
|
||
|
ERR_SERVER_TIMEOUT,
|
||
|
ERR_SERVICE_NOT_AVAILABLE,
|
||
|
ERR_UNKNOWN,
|
||
|
ERR_UNKNOWN_INTERRUPT,
|
||
|
ERR_CANNOT_DELETE_ORIGINAL,
|
||
|
ERR_CANNOT_DELETE_PARTIAL,
|
||
|
ERR_CANNOT_RENAME_ORIGINAL,
|
||
|
ERR_CANNOT_RENAME_PARTIAL,
|
||
|
ERR_NEED_PASSWD,
|
||
|
ERR_CANNOT_SYMLINK,
|
||
|
ERR_NO_CONTENT,
|
||
|
ERR_DISK_FULL,
|
||
|
ERR_IDENTICAL_FILES,
|
||
|
ERR_SLAVE_DEFINED
|
||
|
};
|
||
|
|
||
|
|
||
|
%If ( - KDE_3_0_1 )
|
||
|
|
||
|
enum CacheControl
|
||
|
{
|
||
|
CC_CacheOnly,
|
||
|
CC_Cache,
|
||
|
CC_Verify,
|
||
|
CC_Reload
|
||
|
};
|
||
|
|
||
|
%End
|
||
|
|
||
|
%End
|
||
|
|
||
|
//force
|
||
|
//ig typedef QMap<QString,QString> MetaData;
|
||
|
//end
|
||
|
}; // namespace KIO
|
||
|
|
||
|
//force
|
||
|
KIO::UDSEntry testKIOUDSEntry (KIO::UDSEntry);
|
||
|
%MethodCode
|
||
|
//takes list | (KIO.UDSEntry)
|
||
|
//returns (KIO.UDSEntry)
|
||
|
sipRes = a0;
|
||
|
%End
|
||
|
|
||
|
KIO::UDSEntryList testKIOUDSEntryList (KIO::UDSEntryList);
|
||
|
%MethodCode
|
||
|
//takes list | (KIO.UDSEntryList)
|
||
|
//returns (KIO.UDSEntryList)
|
||
|
sipRes = a0;
|
||
|
%End
|
||
|
|
||
|
%ModuleHeaderCode
|
||
|
#include <qmap.h>
|
||
|
%End
|
||
|
|
||
|
KIO::MetaData testKIOMetaData (KIO::MetaData);
|
||
|
%MethodCode
|
||
|
//takes dict | (KIO.MetaData)
|
||
|
//returns (KIO.MetaData)
|
||
|
sipRes = a0;
|
||
|
%End
|
||
|
|
||
|
//end
|
||
|
|
||
|
|
||
|
%MappedType KIO::UDSEntry
|
||
|
//converts a Python list of KIO.UDSAtom
|
||
|
{
|
||
|
%TypeHeaderCode
|
||
|
#include <qvaluelist.h>
|
||
|
#include <global.h>
|
||
|
%End
|
||
|
|
||
|
%ConvertFromTypeCode
|
||
|
if (!sipCpp)
|
||
|
return PyList_New(0);
|
||
|
|
||
|
// Create the list
|
||
|
PyObject *pylist;
|
||
|
if ((pylist = PyList_New(0)) == NULL)
|
||
|
return NULL;
|
||
|
|
||
|
QValueList<KIO::UDSAtom> *cpplist = (QValueList<KIO::UDSAtom> *)sipCpp;
|
||
|
PyObject *inst;
|
||
|
|
||
|
// Get it.
|
||
|
QValueList<KIO::UDSAtom>::Iterator it;
|
||
|
for( it = cpplist->begin(); it != cpplist->end(); ++it )
|
||
|
{
|
||
|
if (((inst = sipConvertFromNewType(new KIO::UDSAtom(*it), sipType_KIO_UDSAtom, NULL)) == NULL)
|
||
|
|| PyList_Append (pylist, inst) < 0)
|
||
|
{
|
||
|
Py_DECREF (pylist);
|
||
|
return NULL;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
return pylist;
|
||
|
%End
|
||
|
|
||
|
|
||
|
%ConvertToTypeCode
|
||
|
if (sipIsErr == NULL)
|
||
|
return PyList_Check(sipPy);
|
||
|
|
||
|
QValueList<KIO::UDSAtom> *cpplist = new QValueList<KIO::UDSAtom>;
|
||
|
|
||
|
PyObject *elem;
|
||
|
KIO::UDSAtom *cpp;
|
||
|
int iserr = 0;
|
||
|
|
||
|
for (int i = 0; i < PyList_Size (sipPy); i++)
|
||
|
{
|
||
|
elem = PyList_GET_ITEM (sipPy, i);
|
||
|
cpp = (KIO::UDSAtom *)sipForceConvertToType(elem, sipType_KIO_UDSAtom, sipTransferObj, SIP_NOT_NONE|SIP_NO_CONVERTORS, NULL, &iserr);
|
||
|
|
||
|
if (iserr)
|
||
|
{
|
||
|
*sipIsErr = 1;
|
||
|
delete cpplist;
|
||
|
return 0;
|
||
|
}
|
||
|
|
||
|
cpplist->append (*cpp);
|
||
|
}
|
||
|
|
||
|
*sipCppPtr = cpplist;
|
||
|
|
||
|
return 1;
|
||
|
%End
|
||
|
};
|
||
|
|
||
|
|
||
|
%MappedType KIO::UDSEntryList
|
||
|
//converts a Python list of KIO.UDSEntry
|
||
|
{
|
||
|
%TypeHeaderCode
|
||
|
#include <qvaluelist.h>
|
||
|
#include <global.h>
|
||
|
%End
|
||
|
|
||
|
%ConvertFromTypeCode
|
||
|
if (!sipCpp)
|
||
|
return PyList_New(0);
|
||
|
|
||
|
// Create the list
|
||
|
PyObject *pylist;
|
||
|
if ((pylist = PyList_New(0)) == NULL)
|
||
|
return NULL;
|
||
|
|
||
|
QValueList<KIO::UDSEntry> *cpplist = (QValueList<KIO::UDSEntry> *)sipCpp;
|
||
|
PyObject *inst;
|
||
|
|
||
|
// Get it.
|
||
|
QValueList<KIO::UDSEntry>::Iterator it;
|
||
|
for( it = cpplist->begin(); it != cpplist->end(); ++it )
|
||
|
{
|
||
|
KIO::UDSEntry cpp = *it;
|
||
|
inst = sipConvertFromType(&cpp, sipType_KIO_UDSEntry, sipTransferObj);
|
||
|
|
||
|
if (PyList_Append (pylist, inst) < 0)
|
||
|
{
|
||
|
Py_DECREF (pylist);
|
||
|
return NULL;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
return pylist;
|
||
|
%End
|
||
|
|
||
|
|
||
|
%ConvertToTypeCode
|
||
|
if (sipIsErr == NULL)
|
||
|
return PyList_Check(sipPy);
|
||
|
|
||
|
QValueList<KIO::UDSEntry> *cpplist = new QValueList<KIO::UDSEntry>;
|
||
|
|
||
|
PyObject *elem;
|
||
|
KIO::UDSEntry *cpp;
|
||
|
int iserr = 0;
|
||
|
|
||
|
for (int i = 0; i < PyList_Size (sipPy); i++)
|
||
|
{
|
||
|
elem = PyList_GET_ITEM (sipPy, i);
|
||
|
cpp = (KIO::UDSEntry *)sipForceConvertToType(elem, sipType_KIO_UDSEntry, sipTransferObj, SIP_NOT_NONE|SIP_NO_CONVERTORS, NULL, &iserr);
|
||
|
|
||
|
if (iserr)
|
||
|
{
|
||
|
*sipIsErr = 1;
|
||
|
delete cpplist;
|
||
|
return 0;
|
||
|
}
|
||
|
|
||
|
cpplist->append (*cpp);
|
||
|
}
|
||
|
|
||
|
*sipCppPtr = cpplist;
|
||
|
|
||
|
return 1;
|
||
|
%End
|
||
|
};
|
||
|
|
||
|
|
||
|
%MappedType KIO::MetaData
|
||
|
//converts a Python dict of QString, QString
|
||
|
{
|
||
|
%TypeHeaderCode
|
||
|
#include<qmap.h>
|
||
|
#include <global.h>
|
||
|
%End
|
||
|
|
||
|
%ConvertFromTypeCode
|
||
|
// Convert to a Python dict
|
||
|
|
||
|
if (!sipCpp)
|
||
|
return PyDict_New();
|
||
|
|
||
|
PyObject *dict;
|
||
|
|
||
|
// Create the dictionary.
|
||
|
|
||
|
if ((dict = PyDict_New()) == NULL)
|
||
|
return NULL;
|
||
|
|
||
|
// Get it.
|
||
|
|
||
|
const QMap<QString,QString> cppmap = *sipCpp;
|
||
|
QMap<QString,QString>::ConstIterator it;
|
||
|
|
||
|
for (it = cppmap.begin (); it != cppmap.end (); ++it)
|
||
|
{
|
||
|
QString acpp = it.key ();
|
||
|
QString bcpp = it.data ();
|
||
|
PyObject *ainst;
|
||
|
PyObject *binst;
|
||
|
if (((ainst = sipConvertFromNewType(new QString(acpp), sipType_QString, sipTransferObj)) == NULL)
|
||
|
|| ((binst = sipConvertFromNewType(new QString(bcpp), sipType_QString, sipTransferObj)) == NULL)
|
||
|
|| (PyDict_SetItem (dict, ainst, binst) < 0))
|
||
|
{
|
||
|
Py_XDECREF (ainst);
|
||
|
Py_XDECREF (binst);
|
||
|
Py_DECREF (dict);
|
||
|
return NULL;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
return dict;
|
||
|
%End
|
||
|
|
||
|
|
||
|
%ConvertToTypeCode
|
||
|
// Convert a Python dictionary to a QMap on the heap.
|
||
|
|
||
|
if (sipIsErr == NULL)
|
||
|
return PyDict_Check(sipPy);
|
||
|
|
||
|
|
||
|
QMap<QString,QString> *cppmap = new QMap<QString,QString>;
|
||
|
|
||
|
PyObject *aelem, *belem;
|
||
|
SIP_SSIZE_T pos = 0;
|
||
|
QString *acpp;
|
||
|
QString *bcpp;
|
||
|
|
||
|
while (PyDict_Next(sipPy, &pos, &aelem, &belem))
|
||
|
{
|
||
|
int iserr = 0, acpp_state, bcpp_state;
|
||
|
|
||
|
acpp = (QString *)sipForceConvertToType(aelem, sipType_QString, sipTransferObj, SIP_NOT_NONE, &acpp_state, &iserr);
|
||
|
bcpp = (QString *)sipForceConvertToType(belem, sipType_QString, sipTransferObj, SIP_NOT_NONE, &bcpp_state, &iserr);
|
||
|
|
||
|
if (iserr)
|
||
|
{
|
||
|
if (acpp)
|
||
|
sipReleaseType(acpp, sipType_QString, acpp_state);
|
||
|
|
||
|
*sipIsErr = 1;
|
||
|
delete cppmap;
|
||
|
return 0;
|
||
|
}
|
||
|
|
||
|
cppmap->insert (*acpp, *bcpp);
|
||
|
|
||
|
sipReleaseType(acpp, sipType_QString, acpp_state);
|
||
|
sipReleaseType(bcpp, sipType_QString, bcpp_state);
|
||
|
}
|
||
|
|
||
|
*sipCppPtr = (KIO::MetaData *)cppmap;
|
||
|
|
||
|
return 1;
|
||
|
%End
|
||
|
};
|
||
|
|
||
|
|