From bd6595e40ad057a68efc2eb7cf7200fc9c82b3aa Mon Sep 17 00:00:00 2001 From: Nathanael Anderson Date: Tue, 14 Feb 2023 14:13:36 -0600 Subject: [PATCH] Added clearSelection, selectAll, scrollToBottom, scrollToTop to QTableWidget --- .../QTableWidget/qtablewidget_wrap.h | 4 +++ .../QTableWidget/qtablewidget_wrap.cpp | 28 +++++++++++++++++++ src/lib/QtWidgets/QTableWidget.ts | 12 ++++++++ 3 files changed, 44 insertions(+) diff --git a/src/cpp/include/nodegui/QtWidgets/QTableWidget/qtablewidget_wrap.h b/src/cpp/include/nodegui/QtWidgets/QTableWidget/qtablewidget_wrap.h index 724e28c67..46ee1cbd7 100644 --- a/src/cpp/include/nodegui/QtWidgets/QTableWidget/qtablewidget_wrap.h +++ b/src/cpp/include/nodegui/QtWidgets/QTableWidget/qtablewidget_wrap.h @@ -80,4 +80,8 @@ class DLL_EXPORT QTableWidgetWrap : public Napi::ObjectWrap { Napi::Value setRowCount(const Napi::CallbackInfo& info); Napi::Value setSortingEnabled(const Napi::CallbackInfo& info); Napi::Value isSortingEnabled(const Napi::CallbackInfo& info); + Napi::Value clearSelection(const Napi::CallbackInfo& info); + Napi::Value selectAll(const Napi::CallbackInfo& info); + Napi::Value scrollToBottom(const Napi::CallbackInfo& info); + Napi::Value scrollToTop(const Napi::CallbackInfo& info); }; diff --git a/src/cpp/lib/QtWidgets/QTableWidget/qtablewidget_wrap.cpp b/src/cpp/lib/QtWidgets/QTableWidget/qtablewidget_wrap.cpp index 3320a5823..6e4d34d19 100644 --- a/src/cpp/lib/QtWidgets/QTableWidget/qtablewidget_wrap.cpp +++ b/src/cpp/lib/QtWidgets/QTableWidget/qtablewidget_wrap.cpp @@ -82,6 +82,10 @@ Napi::Object QTableWidgetWrap::init(Napi::Env env, Napi::Object exports) { InstanceMethod("visualColumn", &QTableWidgetWrap::visualColumn), InstanceMethod("visualItemRect", &QTableWidgetWrap::visualItemRect), InstanceMethod("visualRow", &QTableWidgetWrap::visualRow), + InstanceMethod("clearSelection", &QTableWidgetWrap::clearSelection), + InstanceMethod("selectAll", &QTableWidgetWrap::selectAll), + InstanceMethod("scrollToBottom", &QTableWidgetWrap::scrollToBottom), + InstanceMethod("scrollToTop", &QTableWidgetWrap::scrollToTop), QABSTRACTSCROLLAREA_WRAPPED_METHODS_EXPORT_DEFINE(QTableWidgetWrap)}); constructor = Napi::Persistent(func); @@ -647,3 +651,27 @@ Napi::Value QTableWidgetWrap::isSortingEnabled(const Napi::CallbackInfo& info) { bool enabled = this->instance->isSortingEnabled(); return Napi::Boolean::New(env, enabled); } + +Napi::Value QTableWidgetWrap::clearSelection(const Napi::CallbackInfo& info) { + Napi::Env env = info.Env(); + this->instance->clearSelection(); + return env.Null(); +} + +Napi::Value QTableWidgetWrap::selectAll(const Napi::CallbackInfo& info) { + Napi::Env env = info.Env(); + this->instance->clearSelection(); + return env.Null(); +} + +Napi::Value QTableWidgetWrap::scrollToBottom(const Napi::CallbackInfo& info) { + Napi::Env env = info.Env(); + this->instance->scrollToBottom(); + return env.Null(); +} + +Napi::Value QTableWidgetWrap::scrollToTop(const Napi::CallbackInfo& info) { + Napi::Env env = info.Env(); + this->instance->scrollToTop(); + return env.Null(); +} diff --git a/src/lib/QtWidgets/QTableWidget.ts b/src/lib/QtWidgets/QTableWidget.ts index 5fba3e109..ce4d2f3ad 100644 --- a/src/lib/QtWidgets/QTableWidget.ts +++ b/src/lib/QtWidgets/QTableWidget.ts @@ -238,6 +238,18 @@ export class QTableWidget extends QAbstractScrollArea { isSortingEnabled(): boolean { return this.native.isSortingEnabled(); } + selectAll(): void { + this.native.selectAll(); + } + clearSelection(): void { + this.native.clearSelection(); + } + scrollToTop(): void { + this.native.scrollToTop(); + } + scrollToBottom(): void { + this.native.scrollToBottom(); + } } wrapperCache.registerWrapper('QTableWidgetWrap', QTableWidget);