#include <QBrush> #include <QFont> #include <QImage> #include <QLine> #include <QLineF> #include <QMatrix> #include <QPaintDevice> #include <QPaintEngine> #include <QPaintEngineState> #include <QPainter> #include <QPainterPath> #include <QPen> #include <QPixmap> #include <QPoint> #include <QPointF> #include <QRect> #include <QRectF> #include <QRegion> #include <QString> #include <QByteArray> #include <cstring> #include <QTextItem> #include <QTransform> #include "qpaintengine.h" #include "gen_qpaintengine.h" extern "C" { extern void miqt_exec_callback(void* cb, int argc, void* argv); } double QTextItem_Descent(QTextItem* self) { return const_cast<const QTextItem*>(self)->descent(); } double QTextItem_Ascent(QTextItem* self) { return const_cast<const QTextItem*>(self)->ascent(); } double QTextItem_Width(QTextItem* self) { return const_cast<const QTextItem*>(self)->width(); } int QTextItem_RenderFlags(QTextItem* self) { QTextItem::RenderFlags ret = const_cast<const QTextItem*>(self)->renderFlags(); return static_cast<int>(ret); } void QTextItem_Text(QTextItem* self, char** _out, int* _out_Strlen) { QString ret = const_cast<const QTextItem*>(self)->text(); // Convert QString from UTF-16 in C++ RAII memory to UTF-8 in manually-managed C memory QByteArray b = ret.toUtf8(); *_out = static_cast<char*>(malloc(b.length())); memcpy(*_out, b.data(), b.length()); *_out_Strlen = b.length(); } QFont* QTextItem_Font(QTextItem* self) { QFont ret = const_cast<const QTextItem*>(self)->font(); // Copy-construct value returned type into heap-allocated copy return static_cast<QFont*>(new QFont(ret)); } void QTextItem_Delete(QTextItem* self) { delete self; } bool QPaintEngine_IsActive(QPaintEngine* self) { return const_cast<const QPaintEngine*>(self)->isActive(); } void QPaintEngine_SetActive(QPaintEngine* self, bool newState) { self->setActive(newState); } bool QPaintEngine_Begin(QPaintEngine* self, QPaintDevice* pdev) { return self->begin(pdev); } bool QPaintEngine_End(QPaintEngine* self) { return self->end(); } void QPaintEngine_UpdateState(QPaintEngine* self, QPaintEngineState* state) { self->updateState(*state); } void QPaintEngine_DrawRects(QPaintEngine* self, QRect* rects, int rectCount) { self->drawRects(rects, static_cast<int>(rectCount)); } void QPaintEngine_DrawRects2(QPaintEngine* self, QRectF* rects, int rectCount) { self->drawRects(rects, static_cast<int>(rectCount)); } void QPaintEngine_DrawLines(QPaintEngine* self, QLine* lines, int lineCount) { self->drawLines(lines, static_cast<int>(lineCount)); } void QPaintEngine_DrawLines2(QPaintEngine* self, QLineF* lines, int lineCount) { self->drawLines(lines, static_cast<int>(lineCount)); } void QPaintEngine_DrawEllipse(QPaintEngine* self, QRectF* r) { self->drawEllipse(*r); } void QPaintEngine_DrawEllipseWithQRect(QPaintEngine* self, QRect* r) { self->drawEllipse(*r); } void QPaintEngine_DrawPath(QPaintEngine* self, QPainterPath* path) { self->drawPath(*path); } void QPaintEngine_DrawPoints(QPaintEngine* self, QPointF* points, int pointCount) { self->drawPoints(points, static_cast<int>(pointCount)); } void QPaintEngine_DrawPoints2(QPaintEngine* self, QPoint* points, int pointCount) { self->drawPoints(points, static_cast<int>(pointCount)); } void QPaintEngine_DrawPolygon(QPaintEngine* self, QPointF* points, int pointCount, uintptr_t mode) { self->drawPolygon(points, static_cast<int>(pointCount), static_cast<QPaintEngine::PolygonDrawMode>(mode)); } void QPaintEngine_DrawPolygon2(QPaintEngine* self, QPoint* points, int pointCount, uintptr_t mode) { self->drawPolygon(points, static_cast<int>(pointCount), static_cast<QPaintEngine::PolygonDrawMode>(mode)); } void QPaintEngine_DrawPixmap(QPaintEngine* self, QRectF* r, QPixmap* pm, QRectF* sr) { self->drawPixmap(*r, *pm, *sr); } void QPaintEngine_DrawTextItem(QPaintEngine* self, QPointF* p, QTextItem* textItem) { self->drawTextItem(*p, *textItem); } void QPaintEngine_DrawTiledPixmap(QPaintEngine* self, QRectF* r, QPixmap* pixmap, QPointF* s) { self->drawTiledPixmap(*r, *pixmap, *s); } void QPaintEngine_DrawImage(QPaintEngine* self, QRectF* r, QImage* pm, QRectF* sr) { self->drawImage(*r, *pm, *sr); } void QPaintEngine_SetPaintDevice(QPaintEngine* self, QPaintDevice* device) { self->setPaintDevice(device); } QPaintDevice* QPaintEngine_PaintDevice(QPaintEngine* self) { return const_cast<const QPaintEngine*>(self)->paintDevice(); } void QPaintEngine_SetSystemClip(QPaintEngine* self, QRegion* baseClip) { self->setSystemClip(*baseClip); } QRegion* QPaintEngine_SystemClip(QPaintEngine* self) { QRegion ret = const_cast<const QPaintEngine*>(self)->systemClip(); // Copy-construct value returned type into heap-allocated copy return static_cast<QRegion*>(new QRegion(ret)); } void QPaintEngine_SetSystemRect(QPaintEngine* self, QRect* rect) { self->setSystemRect(*rect); } QRect* QPaintEngine_SystemRect(QPaintEngine* self) { QRect ret = const_cast<const QPaintEngine*>(self)->systemRect(); // Copy-construct value returned type into heap-allocated copy return static_cast<QRect*>(new QRect(ret)); } QPoint* QPaintEngine_CoordinateOffset(QPaintEngine* self) { QPoint ret = const_cast<const QPaintEngine*>(self)->coordinateOffset(); // Copy-construct value returned type into heap-allocated copy return static_cast<QPoint*>(new QPoint(ret)); } uintptr_t QPaintEngine_Type(QPaintEngine* self) { QPaintEngine::Type ret = const_cast<const QPaintEngine*>(self)->type(); return static_cast<uintptr_t>(ret); } void QPaintEngine_FixNegRect(QPaintEngine* self, int* x, int* y, int* w, int* h) { self->fix_neg_rect(static_cast<int*>(x), static_cast<int*>(y), static_cast<int*>(w), static_cast<int*>(h)); } bool QPaintEngine_TestDirty(QPaintEngine* self, int df) { return self->testDirty(static_cast<QPaintEngine::DirtyFlags>(df)); } void QPaintEngine_SetDirty(QPaintEngine* self, int df) { self->setDirty(static_cast<QPaintEngine::DirtyFlags>(df)); } void QPaintEngine_ClearDirty(QPaintEngine* self, int df) { self->clearDirty(static_cast<QPaintEngine::DirtyFlags>(df)); } bool QPaintEngine_HasFeature(QPaintEngine* self, int feature) { return const_cast<const QPaintEngine*>(self)->hasFeature(static_cast<QPaintEngine::PaintEngineFeatures>(feature)); } QPainter* QPaintEngine_Painter(QPaintEngine* self) { return const_cast<const QPaintEngine*>(self)->painter(); } void QPaintEngine_SyncState(QPaintEngine* self) { self->syncState(); } bool QPaintEngine_IsExtended(QPaintEngine* self) { return const_cast<const QPaintEngine*>(self)->isExtended(); } void QPaintEngine_DrawImage4(QPaintEngine* self, QRectF* r, QImage* pm, QRectF* sr, int flags) { self->drawImage(*r, *pm, *sr, static_cast<Qt::ImageConversionFlags>(flags)); } void QPaintEngine_Delete(QPaintEngine* self) { delete self; } int QPaintEngineState_State(QPaintEngineState* self) { QPaintEngine::DirtyFlags ret = const_cast<const QPaintEngineState*>(self)->state(); return static_cast<int>(ret); } QPen* QPaintEngineState_Pen(QPaintEngineState* self) { QPen ret = const_cast<const QPaintEngineState*>(self)->pen(); // Copy-construct value returned type into heap-allocated copy return static_cast<QPen*>(new QPen(ret)); } QBrush* QPaintEngineState_Brush(QPaintEngineState* self) { QBrush ret = const_cast<const QPaintEngineState*>(self)->brush(); // Copy-construct value returned type into heap-allocated copy return static_cast<QBrush*>(new QBrush(ret)); } QPointF* QPaintEngineState_BrushOrigin(QPaintEngineState* self) { QPointF ret = const_cast<const QPaintEngineState*>(self)->brushOrigin(); // Copy-construct value returned type into heap-allocated copy return static_cast<QPointF*>(new QPointF(ret)); } QBrush* QPaintEngineState_BackgroundBrush(QPaintEngineState* self) { QBrush ret = const_cast<const QPaintEngineState*>(self)->backgroundBrush(); // Copy-construct value returned type into heap-allocated copy return static_cast<QBrush*>(new QBrush(ret)); } uintptr_t QPaintEngineState_BackgroundMode(QPaintEngineState* self) { Qt::BGMode ret = const_cast<const QPaintEngineState*>(self)->backgroundMode(); return static_cast<uintptr_t>(ret); } QFont* QPaintEngineState_Font(QPaintEngineState* self) { QFont ret = const_cast<const QPaintEngineState*>(self)->font(); // Copy-construct value returned type into heap-allocated copy return static_cast<QFont*>(new QFont(ret)); } QMatrix* QPaintEngineState_Matrix(QPaintEngineState* self) { QMatrix ret = const_cast<const QPaintEngineState*>(self)->matrix(); // Copy-construct value returned type into heap-allocated copy return static_cast<QMatrix*>(new QMatrix(ret)); } QTransform* QPaintEngineState_Transform(QPaintEngineState* self) { QTransform ret = const_cast<const QPaintEngineState*>(self)->transform(); // Copy-construct value returned type into heap-allocated copy return static_cast<QTransform*>(new QTransform(ret)); } uintptr_t QPaintEngineState_ClipOperation(QPaintEngineState* self) { Qt::ClipOperation ret = const_cast<const QPaintEngineState*>(self)->clipOperation(); return static_cast<uintptr_t>(ret); } QRegion* QPaintEngineState_ClipRegion(QPaintEngineState* self) { QRegion ret = const_cast<const QPaintEngineState*>(self)->clipRegion(); // Copy-construct value returned type into heap-allocated copy return static_cast<QRegion*>(new QRegion(ret)); } QPainterPath* QPaintEngineState_ClipPath(QPaintEngineState* self) { QPainterPath ret = const_cast<const QPaintEngineState*>(self)->clipPath(); // Copy-construct value returned type into heap-allocated copy return static_cast<QPainterPath*>(new QPainterPath(ret)); } bool QPaintEngineState_IsClipEnabled(QPaintEngineState* self) { return const_cast<const QPaintEngineState*>(self)->isClipEnabled(); } int QPaintEngineState_RenderHints(QPaintEngineState* self) { QPainter::RenderHints ret = const_cast<const QPaintEngineState*>(self)->renderHints(); return static_cast<int>(ret); } uintptr_t QPaintEngineState_CompositionMode(QPaintEngineState* self) { QPainter::CompositionMode ret = const_cast<const QPaintEngineState*>(self)->compositionMode(); return static_cast<uintptr_t>(ret); } double QPaintEngineState_Opacity(QPaintEngineState* self) { return const_cast<const QPaintEngineState*>(self)->opacity(); } QPainter* QPaintEngineState_Painter(QPaintEngineState* self) { return const_cast<const QPaintEngineState*>(self)->painter(); } bool QPaintEngineState_BrushNeedsResolving(QPaintEngineState* self) { return const_cast<const QPaintEngineState*>(self)->brushNeedsResolving(); } bool QPaintEngineState_PenNeedsResolving(QPaintEngineState* self) { return const_cast<const QPaintEngineState*>(self)->penNeedsResolving(); } void QPaintEngineState_Delete(QPaintEngineState* self) { delete self; }