#include "gen_qfile.h" #include "qfile.h" #include #include #include #include #include extern "C" { extern void miqt_exec_callback(void* cb, int argc, void* argv); } QFile* QFile_new() { return new QFile(); } QFile* QFile_new2(const char* name, size_t name_Strlen) { QString name_QString = QString::fromUtf8(name, name_Strlen); return new QFile(name_QString); } QFile* QFile_new3(QObject* parent) { return new QFile(parent); } QFile* QFile_new4(const char* name, size_t name_Strlen, QObject* parent) { QString name_QString = QString::fromUtf8(name, name_Strlen); return new QFile(name_QString, parent); } QMetaObject* QFile_MetaObject(QFile* self) { return (QMetaObject*) self->metaObject(); } void QFile_Tr(char* s, char** _out, int* _out_Strlen) { QString ret = QFile::tr(s); // Convert QString from UTF-16 in C++ RAII memory to UTF-8 in manually-managed C memory QByteArray b = ret.toUtf8(); *_out = static_cast(malloc(b.length())); memcpy(*_out, b.data(), b.length()); *_out_Strlen = b.length(); } void QFile_TrUtf8(char* s, char** _out, int* _out_Strlen) { QString ret = QFile::trUtf8(s); // Convert QString from UTF-16 in C++ RAII memory to UTF-8 in manually-managed C memory QByteArray b = ret.toUtf8(); *_out = static_cast(malloc(b.length())); memcpy(*_out, b.data(), b.length()); *_out_Strlen = b.length(); } void QFile_FileName(QFile* self, char** _out, int* _out_Strlen) { QString ret = self->fileName(); // Convert QString from UTF-16 in C++ RAII memory to UTF-8 in manually-managed C memory QByteArray b = ret.toUtf8(); *_out = static_cast(malloc(b.length())); memcpy(*_out, b.data(), b.length()); *_out_Strlen = b.length(); } void QFile_SetFileName(QFile* self, const char* name, size_t name_Strlen) { QString name_QString = QString::fromUtf8(name, name_Strlen); self->setFileName(name_QString); } QByteArray* QFile_EncodeName(const char* fileName, size_t fileName_Strlen) { QString fileName_QString = QString::fromUtf8(fileName, fileName_Strlen); QByteArray ret = QFile::encodeName(fileName_QString); // Copy-construct value returned type into heap-allocated copy return static_cast(new QByteArray(ret)); } void QFile_DecodeName(QByteArray* localFileName, char** _out, int* _out_Strlen) { QString ret = QFile::decodeName(*localFileName); // Convert QString from UTF-16 in C++ RAII memory to UTF-8 in manually-managed C memory QByteArray b = ret.toUtf8(); *_out = static_cast(malloc(b.length())); memcpy(*_out, b.data(), b.length()); *_out_Strlen = b.length(); } void QFile_DecodeNameWithLocalFileName(char* localFileName, char** _out, int* _out_Strlen) { QString ret = QFile::decodeName(localFileName); // Convert QString from UTF-16 in C++ RAII memory to UTF-8 in manually-managed C memory QByteArray b = ret.toUtf8(); *_out = static_cast(malloc(b.length())); memcpy(*_out, b.data(), b.length()); *_out_Strlen = b.length(); } bool QFile_Exists(QFile* self) { return self->exists(); } bool QFile_ExistsWithFileName(const char* fileName, size_t fileName_Strlen) { QString fileName_QString = QString::fromUtf8(fileName, fileName_Strlen); return QFile::exists(fileName_QString); } void QFile_ReadLink(QFile* self, char** _out, int* _out_Strlen) { QString ret = self->readLink(); // Convert QString from UTF-16 in C++ RAII memory to UTF-8 in manually-managed C memory QByteArray b = ret.toUtf8(); *_out = static_cast(malloc(b.length())); memcpy(*_out, b.data(), b.length()); *_out_Strlen = b.length(); } void QFile_ReadLinkWithFileName(const char* fileName, size_t fileName_Strlen, char** _out, int* _out_Strlen) { QString fileName_QString = QString::fromUtf8(fileName, fileName_Strlen); QString ret = QFile::readLink(fileName_QString); // Convert QString from UTF-16 in C++ RAII memory to UTF-8 in manually-managed C memory QByteArray b = ret.toUtf8(); *_out = static_cast(malloc(b.length())); memcpy(*_out, b.data(), b.length()); *_out_Strlen = b.length(); } void QFile_SymLinkTarget(QFile* self, char** _out, int* _out_Strlen) { QString ret = self->symLinkTarget(); // Convert QString from UTF-16 in C++ RAII memory to UTF-8 in manually-managed C memory QByteArray b = ret.toUtf8(); *_out = static_cast(malloc(b.length())); memcpy(*_out, b.data(), b.length()); *_out_Strlen = b.length(); } void QFile_SymLinkTargetWithFileName(const char* fileName, size_t fileName_Strlen, char** _out, int* _out_Strlen) { QString fileName_QString = QString::fromUtf8(fileName, fileName_Strlen); QString ret = QFile::symLinkTarget(fileName_QString); // Convert QString from UTF-16 in C++ RAII memory to UTF-8 in manually-managed C memory QByteArray b = ret.toUtf8(); *_out = static_cast(malloc(b.length())); memcpy(*_out, b.data(), b.length()); *_out_Strlen = b.length(); } bool QFile_Remove(QFile* self) { return self->remove(); } bool QFile_RemoveWithFileName(const char* fileName, size_t fileName_Strlen) { QString fileName_QString = QString::fromUtf8(fileName, fileName_Strlen); return QFile::remove(fileName_QString); } bool QFile_MoveToTrash(QFile* self) { return self->moveToTrash(); } bool QFile_Rename(QFile* self, const char* newName, size_t newName_Strlen) { QString newName_QString = QString::fromUtf8(newName, newName_Strlen); return self->rename(newName_QString); } bool QFile_Rename2(const char* oldName, size_t oldName_Strlen, const char* newName, size_t newName_Strlen) { QString oldName_QString = QString::fromUtf8(oldName, oldName_Strlen); QString newName_QString = QString::fromUtf8(newName, newName_Strlen); return QFile::rename(oldName_QString, newName_QString); } bool QFile_Link(QFile* self, const char* newName, size_t newName_Strlen) { QString newName_QString = QString::fromUtf8(newName, newName_Strlen); return self->link(newName_QString); } bool QFile_Link2(const char* oldname, size_t oldname_Strlen, const char* newName, size_t newName_Strlen) { QString oldname_QString = QString::fromUtf8(oldname, oldname_Strlen); QString newName_QString = QString::fromUtf8(newName, newName_Strlen); return QFile::link(oldname_QString, newName_QString); } bool QFile_Copy(QFile* self, const char* newName, size_t newName_Strlen) { QString newName_QString = QString::fromUtf8(newName, newName_Strlen); return self->copy(newName_QString); } bool QFile_Copy2(const char* fileName, size_t fileName_Strlen, const char* newName, size_t newName_Strlen) { QString fileName_QString = QString::fromUtf8(fileName, fileName_Strlen); QString newName_QString = QString::fromUtf8(newName, newName_Strlen); return QFile::copy(fileName_QString, newName_QString); } int64_t QFile_Size(QFile* self) { return self->size(); } bool QFile_Resize(QFile* self, int64_t sz) { return self->resize((qint64)(sz)); } bool QFile_Resize2(const char* filename, size_t filename_Strlen, int64_t sz) { QString filename_QString = QString::fromUtf8(filename, filename_Strlen); return QFile::resize(filename_QString, (qint64)(sz)); } void QFile_Tr2(char* s, char* c, char** _out, int* _out_Strlen) { QString ret = QFile::tr(s, c); // Convert QString from UTF-16 in C++ RAII memory to UTF-8 in manually-managed C memory QByteArray b = ret.toUtf8(); *_out = static_cast(malloc(b.length())); memcpy(*_out, b.data(), b.length()); *_out_Strlen = b.length(); } void QFile_Tr3(char* s, char* c, int n, char** _out, int* _out_Strlen) { QString ret = QFile::tr(s, c, static_cast(n)); // Convert QString from UTF-16 in C++ RAII memory to UTF-8 in manually-managed C memory QByteArray b = ret.toUtf8(); *_out = static_cast(malloc(b.length())); memcpy(*_out, b.data(), b.length()); *_out_Strlen = b.length(); } void QFile_TrUtf82(char* s, char* c, char** _out, int* _out_Strlen) { QString ret = QFile::trUtf8(s, c); // Convert QString from UTF-16 in C++ RAII memory to UTF-8 in manually-managed C memory QByteArray b = ret.toUtf8(); *_out = static_cast(malloc(b.length())); memcpy(*_out, b.data(), b.length()); *_out_Strlen = b.length(); } void QFile_TrUtf83(char* s, char* c, int n, char** _out, int* _out_Strlen) { QString ret = QFile::trUtf8(s, c, static_cast(n)); // Convert QString from UTF-16 in C++ RAII memory to UTF-8 in manually-managed C memory QByteArray b = ret.toUtf8(); *_out = static_cast(malloc(b.length())); memcpy(*_out, b.data(), b.length()); *_out_Strlen = b.length(); } void QFile_Delete(QFile* self) { delete self; }