Lua: Expose properties of QAction

Change-Id: I14ee6f9b57bbe97a78a0dcfed70a9a022e59fee2
Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
This commit is contained in:
Krzysztof Chrusciel
2025-04-07 21:50:07 +02:00
parent f0930a8cfe
commit 70ad20b0be

View File

@@ -7,10 +7,11 @@
#include <utils/stringutils.h>
#include <QAction>
#include <QApplication>
#include <QClipboard>
#include <QCursor>
#include <QCompleter>
#include <QCursor>
#include <QDir>
#include <QFileDevice>
#include <QFontMetrics>
@@ -26,6 +27,40 @@ void setupQtModule()
sol::table qt(lua, sol::create);
const ScriptPluginSpec *pluginSpec = lua.get<ScriptPluginSpec *>("PluginSpec"sv);
qt.new_usertype<QAction>(
"QAction",
sol::no_constructor,
"checkable",
sol::property(&QAction::isCheckable, &QAction::setCheckable),
"checked",
sol::property(&QAction::isChecked, &QAction::setChecked),
"enabled",
sol::property(&QAction::isEnabled, &QAction::setEnabled),
"icon",
sol::property(
&QAction::icon,
[](QAction *action, IconFilePathOrString icon) {
action->setIcon(toIcon(icon)->icon());
}),
"text",
sol::property(&QAction::text, &QAction::setText),
"iconText",
sol::property(&QAction::iconText, &QAction::setIconText),
"toolTip",
sol::property(&QAction::toolTip, &QAction::setToolTip),
"statusTip",
sol::property(&QAction::statusTip, &QAction::setStatusTip),
"whatsThis",
sol::property(&QAction::whatsThis, &QAction::setWhatsThis),
"visible",
sol::property(&QAction::isVisible, &QAction::setVisible),
"iconVisibleInMenu",
sol::property(&QAction::isIconVisibleInMenu, &QAction::setIconVisibleInMenu),
"shortcutVisibleInContextMenu",
sol::property(
&QAction::isShortcutVisibleInContextMenu,
&QAction::setShortcutVisibleInContextMenu));
qt.new_usertype<QCompleter>(
"QCompleter",
"create",