#define WORKAROUND_INNER_CLASS_DEFINITION_QAccessible__State #include #include #include #include #include #include #include #include #include #include "qaccessibleobject.h" #include "gen_qaccessibleobject.h" extern "C" { extern void miqt_exec_callback(void* cb, int argc, void* argv); } bool QAccessibleObject_IsValid(QAccessibleObject* self) { return const_cast(self)->isValid(); } QObject* QAccessibleObject_Object(QAccessibleObject* self) { return const_cast(self)->object(); } QRect* QAccessibleObject_Rect(QAccessibleObject* self) { QRect ret = const_cast(self)->rect(); // Copy-construct value returned type into heap-allocated copy return static_cast(new QRect(ret)); } void QAccessibleObject_SetText(QAccessibleObject* self, uintptr_t t, const char* text, size_t text_Strlen) { QString text_QString = QString::fromUtf8(text, text_Strlen); self->setText(static_cast(t), text_QString); } QAccessibleInterface* QAccessibleObject_ChildAt(QAccessibleObject* self, int x, int y) { return const_cast(self)->childAt(static_cast(x), static_cast(y)); } QAccessibleApplication* QAccessibleApplication_new() { return new QAccessibleApplication(); } QWindow* QAccessibleApplication_Window(QAccessibleApplication* self) { return const_cast(self)->window(); } int QAccessibleApplication_ChildCount(QAccessibleApplication* self) { return const_cast(self)->childCount(); } int QAccessibleApplication_IndexOfChild(QAccessibleApplication* self, QAccessibleInterface* param1) { return const_cast(self)->indexOfChild(param1); } QAccessibleInterface* QAccessibleApplication_FocusChild(QAccessibleApplication* self) { return const_cast(self)->focusChild(); } QAccessibleInterface* QAccessibleApplication_Parent(QAccessibleApplication* self) { return const_cast(self)->parent(); } QAccessibleInterface* QAccessibleApplication_Child(QAccessibleApplication* self, int index) { return const_cast(self)->child(static_cast(index)); } void QAccessibleApplication_Text(QAccessibleApplication* self, uintptr_t t, char** _out, int* _out_Strlen) { QString ret = const_cast(self)->text(static_cast(t)); // 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(); } uintptr_t QAccessibleApplication_Role(QAccessibleApplication* self) { QAccessible::Role ret = const_cast(self)->role(); return static_cast(ret); } QAccessible__State* QAccessibleApplication_State(QAccessibleApplication* self) { QAccessible::State ret = const_cast(self)->state(); // Copy-construct value returned type into heap-allocated copy return static_cast(new QAccessible::State(ret)); } void QAccessibleApplication_Delete(QAccessibleApplication* self) { delete self; }