Add QMoveEvent
This commit is contained in:
parent
4155a1f586
commit
733c24e6cd
@ -51,6 +51,7 @@ add_library(${CORE_WIDGETS_ADDON} SHARED
|
||||
"${PROJECT_SOURCE_DIR}/src/cpp/lib/QtGui/QDrag/qdrag_wrap.cpp"
|
||||
"${PROJECT_SOURCE_DIR}/src/cpp/lib/QtGui/QEvent/QKeyEvent/qkeyevent_wrap.cpp"
|
||||
"${PROJECT_SOURCE_DIR}/src/cpp/lib/QtGui/QEvent/QMouseEvent/qmouseevent_wrap.cpp"
|
||||
"${PROJECT_SOURCE_DIR}/src/cpp/lib/QtGui/QEvent/QMoveEvent/qmoveevent_wrap.cpp"
|
||||
"${PROJECT_SOURCE_DIR}/src/cpp/lib/QtGui/QEvent/QWheelEvent/qwheelevent_wrap.cpp"
|
||||
"${PROJECT_SOURCE_DIR}/src/cpp/lib/QtGui/QEvent/QNativeGestureEvent/qnativegestureevent_wrap.cpp"
|
||||
"${PROJECT_SOURCE_DIR}/src/cpp/lib/QtGui/QEvent/QPaintEvent/qpaintevent_wrap.cpp"
|
||||
|
||||
@ -0,0 +1,28 @@
|
||||
#pragma once
|
||||
|
||||
#include <napi.h>
|
||||
|
||||
#include <QMoveEvent>
|
||||
|
||||
#include "Extras/Export/export.h"
|
||||
#include "QtGui/QEvent/QEvent/qevent_macro.h"
|
||||
#include "core/Component/component_macro.h"
|
||||
|
||||
class DLL_EXPORT QMoveEventWrap : public Napi::ObjectWrap<QMoveEventWrap> {
|
||||
COMPONENT_WRAPPED_METHODS_DECLARATION
|
||||
QEVENT_WRAPPED_METHODS_DECLARATION
|
||||
|
||||
private:
|
||||
QMoveEvent* instance;
|
||||
|
||||
public:
|
||||
static Napi::Object init(Napi::Env env, Napi::Object exports);
|
||||
QMoveEventWrap(const Napi::CallbackInfo& info);
|
||||
~QMoveEventWrap();
|
||||
QMoveEvent* getInternalInstance();
|
||||
// class constructor
|
||||
static Napi::FunctionReference constructor;
|
||||
// wrapped methods
|
||||
Napi::Value oldPos(const Napi::CallbackInfo& info);
|
||||
Napi::Value pos(const Napi::CallbackInfo& info);
|
||||
};
|
||||
59
src/cpp/lib/QtGui/QEvent/QMoveEvent/qmoveevent_wrap.cpp
Normal file
59
src/cpp/lib/QtGui/QEvent/QMoveEvent/qmoveevent_wrap.cpp
Normal file
@ -0,0 +1,59 @@
|
||||
#include "QtGui/QEvent/QMoveEvent/qmoveevent_wrap.h"
|
||||
|
||||
#include <QString>
|
||||
|
||||
#include "Extras/Utils/nutils.h"
|
||||
#include "QtCore/QPoint/qpoint_wrap.h"
|
||||
|
||||
Napi::FunctionReference QMoveEventWrap::constructor;
|
||||
|
||||
Napi::Object QMoveEventWrap::init(Napi::Env env, Napi::Object exports) {
|
||||
Napi::HandleScope scope(env);
|
||||
char CLASSNAME[] = "QMoveEvent";
|
||||
Napi::Function func =
|
||||
DefineClass(env, CLASSNAME,
|
||||
{InstanceMethod("oldPos", &QMoveEventWrap::oldPos),
|
||||
InstanceMethod("pos", &QMoveEventWrap::pos),
|
||||
|
||||
COMPONENT_WRAPPED_METHODS_EXPORT_DEFINE(QMoveEventWrap)
|
||||
QEVENT_WRAPPED_METHODS_EXPORT_DEFINE(QMoveEventWrap)});
|
||||
constructor = Napi::Persistent(func);
|
||||
exports.Set(CLASSNAME, func);
|
||||
return exports;
|
||||
}
|
||||
|
||||
QMoveEvent* QMoveEventWrap::getInternalInstance() { return this->instance; }
|
||||
|
||||
QMoveEventWrap::QMoveEventWrap(const Napi::CallbackInfo& info)
|
||||
: Napi::ObjectWrap<QMoveEventWrap>(info) {
|
||||
Napi::Env env = info.Env();
|
||||
if (info.Length() == 1) {
|
||||
Napi::External<QMoveEvent> eventObject =
|
||||
info[0].As<Napi::External<QMoveEvent>>();
|
||||
this->instance = static_cast<QMoveEvent*>(eventObject.Data());
|
||||
} else {
|
||||
Napi::TypeError::New(env, "Wrong number of arguments")
|
||||
.ThrowAsJavaScriptException();
|
||||
}
|
||||
this->rawData = extrautils::configureComponent(this->getInternalInstance());
|
||||
}
|
||||
|
||||
QMoveEventWrap::~QMoveEventWrap() {
|
||||
// Do not destroy instance here. It will be done by Qt Event loop.
|
||||
}
|
||||
|
||||
Napi::Value QMoveEventWrap::oldPos(const Napi::CallbackInfo& info) {
|
||||
Napi::Env env = info.Env();
|
||||
QPoint ret = this->instance->oldPos();
|
||||
auto instance = QPointWrap::constructor.New(
|
||||
{Napi::External<QPoint>::New(env, new QPoint(ret))});
|
||||
return instance;
|
||||
}
|
||||
|
||||
Napi::Value QMoveEventWrap::pos(const Napi::CallbackInfo& info) {
|
||||
Napi::Env env = info.Env();
|
||||
QPoint ret = this->instance->pos();
|
||||
auto instance = QPointWrap::constructor.New(
|
||||
{Napi::External<QPoint>::New(env, new QPoint(ret))});
|
||||
return instance;
|
||||
}
|
||||
@ -29,6 +29,7 @@
|
||||
#include "QtGui/QEvent/QDropEvent/qdropevent_wrap.h"
|
||||
#include "QtGui/QEvent/QKeyEvent/qkeyevent_wrap.h"
|
||||
#include "QtGui/QEvent/QMouseEvent/qmouseevent_wrap.h"
|
||||
#include "QtGui/QEvent/QMoveEvent/qmoveevent_wrap.h"
|
||||
#include "QtGui/QEvent/QNativeGestureEvent/qnativegestureevent_wrap.h"
|
||||
#include "QtGui/QEvent/QPaintEvent/qpaintevent_wrap.h"
|
||||
#include "QtGui/QEvent/QResizeEvent/qresizeevent_wrap.h"
|
||||
@ -202,6 +203,7 @@ Napi::Object Main(Napi::Env env, Napi::Object exports) {
|
||||
QLineEditWrap::init(env, exports);
|
||||
QKeyEventWrap::init(env, exports);
|
||||
QMouseEventWrap::init(env, exports);
|
||||
QMoveEventWrap::init(env, exports);
|
||||
QWheelEventWrap::init(env, exports);
|
||||
QTabletEventWrap::init(env, exports);
|
||||
QDragWrap::init(env, exports);
|
||||
|
||||
@ -24,6 +24,7 @@ export { QFontMetricsF } from './lib/QtGui/QFontMetricsF';
|
||||
// Events: Maybe a separate module ?
|
||||
export { QKeyEvent } from './lib/QtGui/QEvent/QKeyEvent';
|
||||
export { QMouseEvent } from './lib/QtGui/QEvent/QMouseEvent';
|
||||
export { QMoveEvent } from './lib/QtGui/QEvent/QMoveEvent';
|
||||
export { QWheelEvent } from './lib/QtGui/QEvent/QWheelEvent';
|
||||
export { QNativeGestureEvent } from './lib/QtGui/QEvent/QNativeGestureEvent';
|
||||
export { QTabletEvent } from './lib/QtGui/QEvent/QTabletEvent';
|
||||
|
||||
18
src/lib/QtGui/QEvent/QMoveEvent.ts
Normal file
18
src/lib/QtGui/QEvent/QMoveEvent.ts
Normal file
@ -0,0 +1,18 @@
|
||||
import addon from '../../utils/addon';
|
||||
import { NativeRawPointer } from '../../core/Component';
|
||||
import { QEvent } from './QEvent';
|
||||
import { QPoint } from '../../QtCore/QPoint';
|
||||
|
||||
export class QMoveEvent extends QEvent {
|
||||
constructor(event: NativeRawPointer<'QEvent'>) {
|
||||
super(new addon.QMoveEvent(event));
|
||||
}
|
||||
|
||||
oldPos(): QPoint {
|
||||
return new QPoint(this.native.oldPos());
|
||||
}
|
||||
|
||||
pos(): QPoint {
|
||||
return new QPoint(this.native.pos());
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user