Add bold support to QFont

This commit is contained in:
Simon Edwards 2021-08-14 18:16:02 +02:00
parent 25e0d61e01
commit 9eed41ecd8
3 changed files with 25 additions and 1 deletions

View File

@ -18,6 +18,8 @@ class DLL_EXPORT QFontWrap : public Napi::ObjectWrap<QFontWrap> {
~QFontWrap();
QFont* getInternalInstance();
// Wrapped methods
Napi::Value bold(const Napi::CallbackInfo& info);
Napi::Value setBold(const Napi::CallbackInfo& info);
Napi::Value setCapitalization(const Napi::CallbackInfo& info);
Napi::Value capitalization(const Napi::CallbackInfo& info);
Napi::Value setFamily(const Napi::CallbackInfo& info);

View File

@ -11,7 +11,9 @@ Napi::Object QFontWrap::init(Napi::Env env, Napi::Object exports) {
char CLASSNAME[] = "QFont";
Napi::Function func = DefineClass(
env, CLASSNAME,
{InstanceMethod("setCapitalization", &QFontWrap::setCapitalization),
{InstanceMethod("setBold", &QFontWrap::setBold),
InstanceMethod("bold", &QFontWrap::bold),
InstanceMethod("setCapitalization", &QFontWrap::setCapitalization),
InstanceMethod("capitalization", &QFontWrap::capitalization),
InstanceMethod("setFamily", &QFontWrap::setFamily),
InstanceMethod("family", &QFontWrap::family),
@ -62,6 +64,20 @@ QFontWrap::~QFontWrap() { this->instance.reset(); }
QFont* QFontWrap::getInternalInstance() { return this->instance.get(); }
Napi::Value QFontWrap::setBold(const Napi::CallbackInfo& info) {
Napi::Env env = info.Env();
Napi::HandleScope scope(env);
int enable = info[0].As<Napi::Boolean>().Value();
this->instance->setBold(enable);
return env.Null();
}
Napi::Value QFontWrap::bold(const Napi::CallbackInfo& info) {
Napi::Env env = info.Env();
Napi::HandleScope scope(env);
return Napi::Value::From(env, this->instance->bold());
}
Napi::Value QFontWrap::setCapitalization(const Napi::CallbackInfo& info) {
Napi::Env env = info.Env();
Napi::HandleScope scope(env);

View File

@ -21,6 +21,12 @@ export class QFont extends Component {
this.native = new addon.QFont();
}
}
bold(): boolean {
return this.native.bold();
}
setBold(enable: boolean): void {
this.native.setBold(enable);
}
setCapitalization(caps: QFontCapitalization): void {
this.native.setCapitalization(caps);
}