From 8c9e7bcb7fe854d30031c4628e8466b7977f24e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C5=BDeljan=20Rikalo?= Date: Wed, 16 Nov 2022 08:29:34 +0100 Subject: [PATCH] Qt6: implemented QCompleter class --- lcl/interfaces/qt6/cbindings/Qt6Pas.pro | 11 +- lcl/interfaces/qt6/cbindings/src/chandles.h | 1 + .../qt6/cbindings/src/qcompleter_c.cpp | 217 ++++++++++++++++++ .../qt6/cbindings/src/qcompleter_c.h | 57 +++++ .../qt6/cbindings/src/qcompleter_hook.h | 106 +++++++++ .../qt6/cbindings/src/qcompleter_hook_c.cpp | 45 ++++ .../qt6/cbindings/src/qcompleter_hook_c.h | 24 ++ lcl/interfaces/qt6/qt62.pas | 57 +++++ 8 files changed, 515 insertions(+), 3 deletions(-) create mode 100644 lcl/interfaces/qt6/cbindings/src/qcompleter_c.cpp create mode 100644 lcl/interfaces/qt6/cbindings/src/qcompleter_c.h create mode 100644 lcl/interfaces/qt6/cbindings/src/qcompleter_hook.h create mode 100644 lcl/interfaces/qt6/cbindings/src/qcompleter_hook_c.cpp create mode 100644 lcl/interfaces/qt6/cbindings/src/qcompleter_hook_c.h diff --git a/lcl/interfaces/qt6/cbindings/Qt6Pas.pro b/lcl/interfaces/qt6/cbindings/Qt6Pas.pro index f2608673ef..67d14d7bbb 100644 --- a/lcl/interfaces/qt6/cbindings/Qt6Pas.pro +++ b/lcl/interfaces/qt6/cbindings/Qt6Pas.pro @@ -12,11 +12,11 @@ # Binding Release Version 6.2.3.1 against Qt6 6.2 LTS release. -win32:VERSION = 6.2.0.0 -else:VERSION = 6.2.0 +win32:VERSION = 6.2.1.0 +else:VERSION = 6.2.1 VER_MAJ = 6 VER_MIN = 2 -VER_PAT = 0 +VER_PAT = 1 win32:VERSION_PE_HEADER = 6.2 QT += gui printsupport @@ -252,6 +252,8 @@ HEADERS += \ qpushbutton_c.h \ qpushbutton_hook.h \ qradiobutton_c.h \ + qcompleter_c.h \ + qcompleter_hook.h \ qlineedit_c.h \ qlineedit_hook.h \ qplaintextedit_c.h \ @@ -392,6 +394,7 @@ HEADERS += \ qbuttongroup_hook_c.h \ qabstractbutton_hook_c.h \ qpushbutton_hook_c.h \ + qcompleter_hook_c.h \ qlineedit_hook_c.h \ qplaintextedit_hook_c.h \ qtextedit_hook_c.h \ @@ -558,6 +561,7 @@ SOURCES += \ qabstractbutton_c.cpp \ qpushbutton_c.cpp \ qradiobutton_c.cpp \ + qcompleter_c.cpp \ qlineedit_c.cpp \ qplaintextedit_c.cpp \ qtextedit_c.cpp \ @@ -654,6 +658,7 @@ SOURCES += \ qbuttongroup_hook_c.cpp \ qabstractbutton_hook_c.cpp \ qpushbutton_hook_c.cpp \ + qcompleter_hook_c.cpp \ qlineedit_hook_c.cpp \ qplaintextedit_hook_c.cpp \ qtextedit_hook_c.cpp \ diff --git a/lcl/interfaces/qt6/cbindings/src/chandles.h b/lcl/interfaces/qt6/cbindings/src/chandles.h index f4c0ac19e0..99ff650f70 100644 --- a/lcl/interfaces/qt6/cbindings/src/chandles.h +++ b/lcl/interfaces/qt6/cbindings/src/chandles.h @@ -380,6 +380,7 @@ typedef struct QTextEdit_hook__ { PTRINT dummy; } *QTextEdit_hookH; typedef struct QGridLayout__ { PTRINT dummy; } *QGridLayoutH; typedef struct QAbstractItemDelegate__ { PTRINT dummy; } *QAbstractItemDelegateH; typedef struct QStyleOptionToolButton__ { PTRINT dummy; } *QStyleOptionToolButtonH; +typedef struct QCompleter_hook__ { PTRINT dummy; } *QCompleter_hookH; typedef struct QLineEdit_hook__ { PTRINT dummy; } *QLineEdit_hookH; typedef struct QTextBrowser__ { PTRINT dummy; } *QTextBrowserH; typedef struct QFont__ { PTRINT dummy; } *QFontH; diff --git a/lcl/interfaces/qt6/cbindings/src/qcompleter_c.cpp b/lcl/interfaces/qt6/cbindings/src/qcompleter_c.cpp new file mode 100644 index 0000000000..877bfb5fc5 --- /dev/null +++ b/lcl/interfaces/qt6/cbindings/src/qcompleter_c.cpp @@ -0,0 +1,217 @@ +//****************************************************************************** +// Copyright (c) 2022 by Željan Rikalo +// +// See the included file COPYING.TXT for details about the copyright. +// +// This program 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. +//****************************************************************************** + + +#include "qcompleter_c.h" + +QCompleterH QCompleter_Create() +{ + return (QCompleterH) new QCompleter(); +} + +QCompleterH QCompleter_Create2(QObjectH parent) +{ + return (QCompleterH) new QCompleter((QObject*)parent); +} + +QCompleterH QCompleter_Create3(QAbstractItemModelH model, QObjectH parent) +{ + return (QCompleterH) new QCompleter((QAbstractItemModel *) model, (QObject *) parent); +} + +QCompleterH QCompleter_Create4(QStringListH list, QObjectH parent) +{ + return (QCompleterH) new QCompleter(*(const QStringList *) list, (QObject *)parent); +} + +void QCompleter_Destroy(QCompleterH handle) +{ + delete (QCompleter *)handle; +} + +Qt::CaseSensitivity QCompleter_caseSensitivity(QCompleterH handle) +{ + return (Qt::CaseSensitivity) ((QCompleter *)handle)->caseSensitivity(); +} + +int QCompleter_completionColumn(QCompleterH handle) +{ + return (int) ((QCompleter *)handle)->completionColumn(); +} + +int QCompleter_completionCount(QCompleterH handle) +{ + return (int) ((QCompleter *)handle)->completionCount(); +} + +QCompleter::CompletionMode QCompleter_completionMode(QCompleterH handle) +{ + return (QCompleter::CompletionMode) ((QCompleter *)handle)->completionMode(); +} + +QAbstractItemModelH QCompleter_completionModel(QCompleterH handle) +{ + return (QAbstractItemModelH) ((QCompleter *)handle)->completionModel(); +} + +void QCompleter_completionPrefix(QCompleterH handle, PWideString retval) +{ + QString t_retval; + t_retval = ((QCompleter *)handle)->completionPrefix(); + copyQStringToPWideString(t_retval, retval); +} + +int QCompleter_completionRole(QCompleterH handle) +{ + return (int) ((QCompleter *)handle)->completionRole(); +} + +void QCompleter_currentCompletion(QCompleterH handle, PWideString retval) +{ + QString t_retval; + t_retval = ((QCompleter *)handle)->currentCompletion(); + copyQStringToPWideString(t_retval, retval); +} + +void QCompleter_currentIndex(QCompleterH handle, QModelIndexH retval) +{ + *(QModelIndex*)retval = ((QCompleter *)handle)->currentIndex(); +} + +int QCompleter_currentRow(QCompleterH handle) +{ + return (int) ((QCompleter *)handle)->currentRow(); +} + +Qt::MatchFlags QCompleter_filterMode(QCompleterH handle) +{ + return (Qt::MatchFlags) ((QCompleter *)handle)->filterMode(); +} + +int QCompleter_maxVisibleItems(QCompleterH handle) +{ + return (int) ((QCompleter *)handle)->maxVisibleItems(); +} + +QAbstractItemModelH QCompleter_model(QCompleterH handle) +{ + return (QAbstractItemModelH) ((QCompleter *)handle)->model(); +} + +QCompleter::ModelSorting QCompleter_modelSorting(QCompleterH handle) +{ + return (QCompleter::ModelSorting) ((QCompleter *)handle)->modelSorting(); +} + +void QCompleter_pathFromIndex(QCompleterH handle, QModelIndexH model, PWideString retval) +{ + QString t_retval; + t_retval = ((QCompleter *)handle)->pathFromIndex(*(QModelIndex *)model); + copyQStringToPWideString(t_retval, retval); +} + +QAbstractItemViewH QCompleter_popup(QCompleterH handle) +{ + return (QAbstractItemViewH) ((QCompleter *)handle)->popup(); +} + +void QCompleter_setCaseSensitivity(QCompleterH handle, Qt::CaseSensitivity caseSensitivity) +{ + ((QCompleter *)handle)->setCaseSensitivity(caseSensitivity); +} + +void QCompleter_setCompletionColumn(QCompleterH handle, int column) +{ + ((QCompleter *)handle)->setCompletionColumn(column); +} + +void QCompleter_setCompletionMode(QCompleterH handle, QCompleter::CompletionMode mode) +{ + ((QCompleter *)handle)->setCompletionMode(mode); +} + +void QCompleter_setCompletionRole(QCompleterH handle, int role) +{ + ((QCompleter *)handle)->setCompletionRole(role); +} + +void QCompleter_setCurrentRow(QCompleterH handle, int row) +{ + ((QCompleter *)handle)->setCurrentRow(row); +} + +void QCompleter_setFilterMode(QCompleterH handle, Qt::MatchFlags filterMode) +{ + ((QCompleter *)handle)->setFilterMode(filterMode); +} + +void QCompleter_setMaxVisibleItems(QCompleterH handle, int maxItems) +{ + ((QCompleter *)handle)->setMaxVisibleItems(maxItems); +} + +void QCompleter_setModel(QCompleterH handle, QAbstractItemModelH model) +{ + ((QCompleter *)handle)->setModel((QAbstractItemModel*)model); +} + +void QCompleter_setModelSorting(QCompleterH handle, QCompleter::ModelSorting sorting) +{ + ((QCompleter *)handle)->setModelSorting(sorting); +} + +void QCompleter_setPopup(QCompleterH handle, QAbstractItemViewH popup) +{ + ((QCompleter *)handle)->setPopup((QAbstractItemView *)popup); +} + +void QCompleter_setWidget(QCompleterH handle, QWidgetH widget) +{ + ((QCompleter *)handle)->setWidget((QWidget *)widget); +} + +void QCompleter_splitPath(QCompleterH handle, PWideString path, QStringListH retval) +{ + QString t_path; + copyPWideStringToQString(path, t_path); + *(QStringList *)retval = ((QCompleter *)handle)->splitPath(t_path); +} + +QWidgetH QCompleter_widget(QCompleterH handle) +{ + return (QWidgetH) ((QCompleter *)handle)->widget(); +} + +bool QCompleter_wrapAround(QCompleterH handle) +{ + return (bool) ((QCompleter *)handle)->wrapAround(); +} + +void QCompleter_complete(QCompleterH handle, PRect rect) +{ + QRect t_rect; + copyPRectToQRect(rect, t_rect); + ((QCompleter *)handle)->complete(t_rect); +} + +void QCompleter_setCompletionPrefix(QCompleterH handle, PWideString prefix) +{ + QString t_prefix; + copyPWideStringToQString(prefix, t_prefix); + ((QCompleter *)handle)->setCompletionPrefix(t_prefix); +} + +void QCompleter_setWrapAround(QCompleterH handle, bool wrap) +{ + ((QCompleter *)handle)->setWrapAround(wrap); +} + + + diff --git a/lcl/interfaces/qt6/cbindings/src/qcompleter_c.h b/lcl/interfaces/qt6/cbindings/src/qcompleter_c.h new file mode 100644 index 0000000000..92eedc70c1 --- /dev/null +++ b/lcl/interfaces/qt6/cbindings/src/qcompleter_c.h @@ -0,0 +1,57 @@ +//****************************************************************************** +// Copyright (c) 2022 by Željan Rikalo +// +// See the included file COPYING.TXT for details about the copyright. +// +// This program 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. +//****************************************************************************** + + +#ifndef QCOMPLETER_C_H +#define QCOMPLETER_C_H + +#include +#include "pascalbind.h" + +C_EXPORT QCompleterH QCompleter_Create(); +C_EXPORT QCompleterH QCompleter_Create2(QObjectH parent); +C_EXPORT QCompleterH QCompleter_Create3(QAbstractItemModelH model, QObjectH parent); +C_EXPORT QCompleterH QCompleter_Create4(QStringListH list, QObjectH parent); +C_EXPORT void QCompleter_Destroy(QCompleterH handle); +C_EXPORT Qt::CaseSensitivity QCompleter_caseSensitivity(QCompleterH handle); +C_EXPORT int QCompleter_completionColumn(QCompleterH handle); +C_EXPORT int QCompleter_completionCount(QCompleterH handle); +C_EXPORT QCompleter::CompletionMode QCompleter_completionMode(QCompleterH handle); +C_EXPORT QAbstractItemModelH QCompleter_completionModel(QCompleterH handle); +C_EXPORT void QCompleter_completionPrefix(QCompleterH handle, PWideString retval); +C_EXPORT int QCompleter_completionRole(QCompleterH handle); +C_EXPORT void QCompleter_currentCompletion(QCompleterH handle, PWideString retval); +C_EXPORT void QCompleter_currentIndex(QCompleterH handle,QModelIndexH retval); +C_EXPORT int QCompleter_currentRow(QCompleterH handle); +C_EXPORT Qt::MatchFlags QCompleter_filterMode(QCompleterH handle); +C_EXPORT int QCompleter_maxVisibleItems(QCompleterH handle); +C_EXPORT QAbstractItemModelH QCompleter_model(QCompleterH handle); +C_EXPORT QCompleter::ModelSorting QCompleter_modelSorting(QCompleterH handle); +C_EXPORT void QCompleter_pathFromIndex(QCompleterH handle, QModelIndexH model, PWideString retval); +C_EXPORT QAbstractItemViewH QCompleter_popup(QCompleterH handle); +C_EXPORT void QCompleter_setCaseSensitivity(QCompleterH handle, Qt::CaseSensitivity caseSensitivity); +C_EXPORT void QCompleter_setCompletionColumn(QCompleterH handle, int column); +C_EXPORT void QCompleter_setCompletionMode(QCompleterH handle, QCompleter::CompletionMode mode); +C_EXPORT void QCompleter_setCompletionRole(QCompleterH handle, int role); +C_EXPORT void QCompleter_setCurrentRow(QCompleterH handle, int row); +C_EXPORT void QCompleter_setFilterMode(QCompleterH handle, Qt::MatchFlags filterMode); +C_EXPORT void QCompleter_setMaxVisibleItems(QCompleterH handle, int maxItems); +C_EXPORT void QCompleter_setModel(QCompleterH handle, QAbstractItemModelH model); +C_EXPORT void QCompleter_setModelSorting(QCompleterH handle, QCompleter::ModelSorting sorting); +C_EXPORT void QCompleter_setPopup(QCompleterH handle, QAbstractItemViewH popup); +C_EXPORT void QCompleter_setWidget(QCompleterH handle, QWidgetH widget); +C_EXPORT void QCompleter_splitPath(QCompleterH handle, PWideString path, QStringListH retval); +C_EXPORT QWidgetH QCompleter_widget(QCompleterH handle); +C_EXPORT bool QCompleter_wrapAround(QCompleterH handle); +C_EXPORT void QCompleter_complete(QCompleterH handle, PRect rect); +C_EXPORT void QCompleter_setCompletionPrefix(QCompleterH handle, PWideString prefix); +C_EXPORT void QCompleter_setWrapAround(QCompleterH handle, bool wrap); + +#endif diff --git a/lcl/interfaces/qt6/cbindings/src/qcompleter_hook.h b/lcl/interfaces/qt6/cbindings/src/qcompleter_hook.h new file mode 100644 index 0000000000..69aded88a7 --- /dev/null +++ b/lcl/interfaces/qt6/cbindings/src/qcompleter_hook.h @@ -0,0 +1,106 @@ +//****************************************************************************** +// Copyright (c) 2022 by Željan Rikalo +// +// See the included file COPYING.TXT for details about the copyright. +// +// This program 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. +//****************************************************************************** + + +#ifndef QCOMPLETER_HOOK_H +#define QCOMPLETER_HOOK_H + +#include + +#include "qobject_hook.h" + +class QCompleter_hook : public QObject_hook { + Q_OBJECT + public: + QCompleter_hook(QObject *handle) : QObject_hook(handle) { + activated_event.func = NULL; + activated2_event.func = NULL; + highlighted_event.func = NULL; + highlighted2_event.func = NULL; + } + + void hook_activated(QHook &hook) { + if ( !activated_event.func ) + connect(handle, SIGNAL(activated(const QModelIndex&)), this, SLOT(activated_hook(const QModelIndex&))); + activated_event = hook; + if ( !hook.func ) + disconnect(handle, SIGNAL(activated(const QModelIndex&)), this, SLOT(activated_hook(const QModelIndex&))); + } + + void hook_activated2(QHook &hook) { + if ( !activated2_event.func ) + connect(handle, SIGNAL(activated(const QString&)), this, SLOT(activated2_hook(const QString&))); + activated2_event = hook; + if ( !hook.func ) + disconnect(handle, SIGNAL(activated(const QString&)), this, SLOT(activated2_hook(const QString&))); + } + + void hook_highlighted(QHook &hook) { + if ( !highlighted_event.func ) + connect(handle, SIGNAL(highlighted(const QModelIndex&)), this, SLOT(highlighted_hook(const QModelIndex&))); + highlighted_event = hook; + if ( !hook.func ) + disconnect(handle, SIGNAL(highlighted(const QModelIndex&)), this, SLOT(highlighted_hook(const QModelIndex&))); + } + + void hook_highlighted2(QHook &hook) { + if ( !highlighted2_event.func ) + connect(handle, SIGNAL(highlighted(const QString&)), this, SLOT(highlighted2_hook(const QString&))); + highlighted2_event = hook; + if ( !hook.func ) + disconnect(handle, SIGNAL(highlighted(const QString&)), this, SLOT(highlighted2_hook(const QString&))); + } + + private slots: + + void activated_hook(const QModelIndex& index) { + if ( activated_event.func ) { + typedef void (*func_type)(void *data, const QModelIndexH index); + (*(func_type)activated_event.func)(activated_event.data, (const QModelIndexH)&index); + } + } + + void activated2_hook(const QString& AnonParam1) { + if ( activated2_event.func ) { + typedef void (*func_type)(void *data, PWideString AnonParam1); + PWideString t_AnonParam1; + initializePWideString(t_AnonParam1); + copyQStringToPWideString(AnonParam1, t_AnonParam1); + (*(func_type)activated2_event.func)(activated2_event.data, t_AnonParam1); + finalizePWideString(t_AnonParam1); + } + } + + void highlighted_hook(const QModelIndex& index) { + if ( highlighted_event.func ) { + typedef void (*func_type)(void *data, const QModelIndexH index); + (*(func_type)highlighted_event.func)(highlighted_event.data, (const QModelIndexH)&index); + } + } + + void highlighted2_hook(const QString& AnonParam1) { + if ( highlighted2_event.func ) { + typedef void (*func_type)(void *data, PWideString AnonParam1); + PWideString t_AnonParam1; + initializePWideString(t_AnonParam1); + copyQStringToPWideString(AnonParam1, t_AnonParam1); + (*(func_type)highlighted2_event.func)(highlighted2_event.data, t_AnonParam1); + finalizePWideString(t_AnonParam1); + } + } + private: + QHook activated_event; + QHook activated2_event; + QHook highlighted_event; + QHook highlighted2_event; +}; + + +#endif diff --git a/lcl/interfaces/qt6/cbindings/src/qcompleter_hook_c.cpp b/lcl/interfaces/qt6/cbindings/src/qcompleter_hook_c.cpp new file mode 100644 index 0000000000..09d4381fc3 --- /dev/null +++ b/lcl/interfaces/qt6/cbindings/src/qcompleter_hook_c.cpp @@ -0,0 +1,45 @@ +//****************************************************************************** +// Copyright (c) 2022 by Željan Rikalo +// +// See the included file COPYING.TXT for details about the copyright. +// +// This program 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. +//****************************************************************************** + + +#include "qcompleter_hook_c.h" + +QCompleter_hookH QCompleter_hook_Create(QObjectH handle) +{ + return (QCompleter_hookH) new QCompleter_hook((QObject*)handle); +} + +void QCompleter_hook_Destroy(QCompleter_hookH handle) +{ + delete (QCompleter_hook *)handle; +} + +void QCompleter_hook_hook_activated(QCompleter_hookH handle, QHookH hook) +{ + ((QCompleter_hook *)handle)->hook_activated(hook); +} + +void QCompleter_hook_hook_activated2(QCompleter_hookH handle, QHookH hook) +{ + ((QCompleter_hook *)handle)->hook_activated2(hook); +} + +void QCompleter_hook_hook_highlighted(QCompleter_hookH handle, QHookH hook) +{ + ((QCompleter_hook *)handle)->hook_highlighted(hook); +} + +void QCompleter_hook_hook_highlighted2(QCompleter_hookH handle, QHookH hook) +{ + ((QCompleter_hook *)handle)->hook_highlighted2(hook); +} + + + diff --git a/lcl/interfaces/qt6/cbindings/src/qcompleter_hook_c.h b/lcl/interfaces/qt6/cbindings/src/qcompleter_hook_c.h new file mode 100644 index 0000000000..7b9de78bfa --- /dev/null +++ b/lcl/interfaces/qt6/cbindings/src/qcompleter_hook_c.h @@ -0,0 +1,24 @@ +//****************************************************************************** +// Copyright (c) 2022 by Željan Rikalo +// +// See the included file COPYING.TXT for details about the copyright. +// +// This program 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. +//****************************************************************************** + + +#ifndef QCOMPLETER_HOOK_C_H +#define QCOMPLETER_HOOK_C_H + +#include "qcompleter_hook.h" + +C_EXPORT QCompleter_hookH QCompleter_hook_Create(QObjectH handle); +C_EXPORT void QCompleter_hook_Destroy(QCompleter_hookH handle); +C_EXPORT void QCompleter_hook_hook_activated(QCompleter_hookH handle, QHookH hook); +C_EXPORT void QCompleter_hook_hook_activated2(QCompleter_hookH handle, QHookH hook); +C_EXPORT void QCompleter_hook_hook_highlighted(QCompleter_hookH handle, QHookH hook); +C_EXPORT void QCompleter_hook_hook_highlighted2(QCompleter_hookH handle, QHookH hook); + +#endif diff --git a/lcl/interfaces/qt6/qt62.pas b/lcl/interfaces/qt6/qt62.pas index 5e88760ef2..a81d6d6863 100644 --- a/lcl/interfaces/qt6/qt62.pas +++ b/lcl/interfaces/qt6/qt62.pas @@ -572,6 +572,7 @@ QMenuBar_hookH = class(QWidget_hookH) end; QButtonGroup_hookH = class(QObject_hookH) end; QAbstractButton_hookH = class(QWidget_hookH) end; QPushButton_hookH = class(QAbstractButton_hookH) end; +QCompleter_hookH = class(QObject_hookH) end; QLineEdit_hookH = class(QWidget_hookH) end; QPlainTextEdit_hookH = class(QAbstractScrollArea_hookH) end; QPlainTextDocumentLayout_hookH = class(QAbstractTextDocumentLayout_hookH) end; @@ -10153,6 +10154,55 @@ function QRadioButton_Create(text: PWideString; parent: QWidgetH = nil): QRadioB procedure QRadioButton_sizeHint(handle: QRadioButtonH; retval: PSize); cdecl; external Qt6PasLib name 'QRadioButton_sizeHint'; procedure QRadioButton_minimumSizeHint(handle: QRadioButtonH; retval: PSize); cdecl; external Qt6PasLib name 'QRadioButton_minimumSizeHint'; +type + QCompleter_activated_Event = procedure (aIndex: QModelIndexH) of object cdecl; + QCompleter_activated2_Event = procedure (aText: PWideString) of object cdecl; + QCompleter_highlighted_Event = procedure (aIndex: QModelIndexH) of object cdecl; + QCompleter_highlighted2_Event = procedure (aText: PWideString) of object cdecl; + +type + QCompleterCompletionMode = (QCompleterPopupCompletion, QCompleterUnfilteredPopupCompletion, QCompleterInlineCompletion); + QCompleterModelSorting = (QCompleterUnsortedModel, QCompleterCaseSensitiveSortedModel, QCompleterCaseInsensitivelySortedModel); + +function QCompleter_Create(): QCompleterH; cdecl; external Qt6PasLib name 'QCompleter_Create'; +function QCompleter_Create2(parent: QObjectH): QCompleterH; cdecl; external Qt6PasLib name 'QCompleter_Create2'; +function QCompleter_Create3(model: QAbstractItemModelH; parent: QObjectH): QCompleterH; cdecl; external Qt6PasLib name 'QCompleter_Create3'; +function QCompleter_Create4(list: QStringListH; parent: QObjectH): QCompleterH; cdecl; external Qt6PasLib name 'QCompleter_Create4'; +procedure QCompleter_Destroy(handle: QCompleterH); cdecl; external Qt6PasLib name 'QCompleter_Destroy'; +function QCompleter_caseSensitivity(handle: QCompleterH): QtCaseSensitivity; cdecl; external Qt6PasLib name 'QCompleter_caseSensitivity'; +function QCompleter_completionColumn(handle: QCompleterH): integer; cdecl; external Qt6PasLib name 'QCompleter_completionColumn'; +function QCompleter_completionCount(handle: QCompleterH): integer; cdecl; external Qt6PasLib name 'QCompleter_completionCount'; +function QCompleter_completionMode(handle: QCompleterH): QCompleterCompletionMode; cdecl; external Qt6PasLib name 'QCompleter_completionMode'; +function QCompleter_completionModel(handle: QCompleterH): QAbstractItemModelH; cdecl; external Qt6PasLib name 'QCompleter_completionModel'; +procedure QCompleter_completionPrefix(handle: QCompleterH; retval: PWideString); cdecl; external Qt6PasLib name 'QCompleter_completionPrefix'; +function QCompleter_completionRole(handle: QCompleterH): integer; cdecl; external Qt6PasLib name 'QCompleter_completionRole'; +procedure QCompleter_currentCompletion(handle: QCompleterH; retval: PWideString); cdecl; external Qt6PasLib name 'QCompleter_currentCompletion'; +procedure QCompleter_currentIndex(handle: QCompleterH; retval: QModelIndexH); cdecl; external Qt6PasLib name 'QCompleter_currentIndex'; +function QCompleter_currentRow(handle: QCompleterH): integer; cdecl; external Qt6PasLib name 'QCompleter_currentRow'; +function QCompleter_filterMode(handle: QCompleterH): QtMatchFlags; cdecl; external Qt6PasLib name 'QCompleter_filterMode'; +function QCompleter_maxVisibleItems(handle: QCompleterH): integer; cdecl; external Qt6PasLib name 'QCompleter_maxVisibleItems'; +function QCompleter_model(handle: QCompleterH): QAbstractItemModelH; cdecl; external Qt6PasLib name 'QCompleter_model'; +function QCompleter_modelSorting(handle: QCompleterH): QCompleterModelSorting; cdecl; external Qt6PasLib name 'QCompleter_modelSorting'; +procedure QCompleter_pathFromIndex(handle: QCompleterH; aModel: QModelIndexH; retval: PWideString); cdecl; external Qt6PasLib name 'QCompleter_pathFromIndex'; +function QCompleter_popup(handle: QCompleterH): QAbstractItemViewH; cdecl; external Qt6PasLib name 'QCompleter_popup'; +procedure QCompleter_setCaseSensitivity(handle: QCompleterH; aCaseSensitivity: QtCaseSensitivity); cdecl; external Qt6PasLib name 'setCaseSensitivity'; +procedure QCompleter_setCompletionColumn(handle: QCompleterH; aColumn: integer); cdecl; external Qt6PasLib name 'QCompleter_setCompletionColumn'; +procedure QCompleter_setCompletionMode(handle: QCompleterH; aMode: QCompleterCompletionMode); cdecl; external Qt6PasLib name 'QCompleter_setCompletionMode'; +procedure QCompleter_setCompletionRole(handle: QCompleterH; aRole: integer); cdecl; external Qt6PasLib name 'QCompleter_setCompletionRole'; +procedure QCompleter_setCurrentRow(handle: QCompleterH; aRow: integer); cdecl; external Qt6PasLib name 'QCompleter_setCurrentRow'; +procedure QCompleter_setFilterMode(handle: QCompleterH; aFilterMode: QtMatchFlags); cdecl; external Qt6PasLib name 'QCompleter_setFilterMode'; +procedure QCompleter_setMaxVisibleItems(handle: QCompleterH; aMaxItems: integer); cdecl; external Qt6PasLib name 'QCompleter_setMaxVisibleItems'; +procedure QCompleter_setModel(handle: QCompleterH; aModel: QAbstractItemModelH); cdecl; external Qt6PasLib name 'QCompleter_setModel'; +procedure QCompleter_setModelSorting(handle: QCompleterH; aSorting: QCompleterModelSorting); cdecl; external Qt6PasLib name 'QCompleter_setModelSorting'; +procedure QCompleter_setPopup(handle: QCompleterH; aPopup: QAbstractItemViewH); cdecl; external Qt6PasLib name 'QCompleter_setPopup'; +procedure QCompleter_setWidget(handle: QCompleterH; aWidget: QWidgetH); cdecl; external Qt6PasLib name 'QCompleter_setWidget'; +procedure QCompleter_splitPath(handle: QCompleterH; aPath: PWideString; retval: QStringListH); cdecl; external Qt6PasLib name 'QCompleter_splitPath'; +function QCompleter_widget(handle: QCompleterH):QWidgetH; cdecl; external Qt6PasLib name 'QCompleter_widget'; +function QCompleter_wrapAround(handle: QCompleterH): boolean; cdecl; external Qt6PasLib name 'QCompleter_wrapAround'; +procedure QCompleter_complete(handle: QCompleterH; r: PRect); cdecl; external Qt6PasLib name 'QCompleter_complete'; +procedure QCompleter_setCompletionPrefix(handle: QCompleterH; aPrefix: PWideString); cdecl; external Qt6PasLib name 'QCompleter_setCompletionPrefix'; +procedure QCompleter_setWrapAround(handle: QCompleterH; aWrap: boolean); cdecl; external Qt6PasLib name 'QCompleter_setWrapAround'; + type QLineEditEchoMode = ( // QLineEdit::EchoMode (1) @@ -15072,6 +15122,13 @@ procedure QAbstractButton_hook_hook_toggled(handle: QAbstractButton_hookH; hook: function QPushButton_hook_Create(handle: QObjectH): QPushButton_hookH; cdecl; external Qt6PasLib name 'QPushButton_hook_Create'; procedure QPushButton_hook_Destroy(handle: QPushButton_hookH); cdecl; external Qt6PasLib name 'QPushButton_hook_Destroy'; +function QCompleter_hook_Create(handle: QObjectH): QCompleter_hookH; cdecl; external Qt6PasLib name 'QCompleter_hook_Create'; +procedure QCompleter_hook_Destroy(handle: QCompleter_hookH); cdecl; external Qt6PasLib name 'QCompleter_hook_Destroy'; +procedure QCompleter_hook_hook_activated(handle: QCompleter_hookH; hook: QCompleter_activated_Event); cdecl; external Qt6PasLib name 'QCompleter_hook_hook_activated'; +procedure QCompleter_hook_hook_activated2(handle: QCompleter_hookH; hook: QCompleter_activated2_Event); cdecl; external Qt6PasLib name 'QCompleter_hook_hook_activated2'; +procedure QCompleter_hook_hook_highlighted(handle: QCompleter_hookH; hook: QCompleter_highlighted_Event); cdecl; external Qt6PasLib name 'QCompleter_hook_hook_highlighted'; +procedure QCompleter_hook_hook_highlighted2(handle: QCompleter_hookH; hook: QCompleter_highlighted2_Event); cdecl; external Qt6PasLib name 'QCompleter_hook_hook_highlighted2'; + function QLineEdit_hook_Create(handle: QObjectH): QLineEdit_hookH; cdecl; external Qt6PasLib name 'QLineEdit_hook_Create'; procedure QLineEdit_hook_Destroy(handle: QLineEdit_hookH); cdecl; external Qt6PasLib name 'QLineEdit_hook_Destroy'; procedure QLineEdit_hook_hook_textChanged(handle: QLineEdit_hookH; hook: QLineEdit_textChanged_Event); cdecl; external Qt6PasLib name 'QLineEdit_hook_hook_textChanged';