From b3fd45035c3b5bc889320acf99db52cf278f179d Mon Sep 17 00:00:00 2001 From: Filippo Cucchetto Date: Sun, 28 Dec 2014 15:58:01 +0100 Subject: [PATCH] Fixed the Nim example --- Nim/main.nim | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/Nim/main.nim b/Nim/main.nim index ee5e02c..bbf8acc 100644 --- a/Nim/main.nim +++ b/Nim/main.nim @@ -5,21 +5,20 @@ import typeinfo type MyQObject = ref object of QObject m_name: string -method name(myQObject: MyQObject): string = +method getName(myQObject: MyQObject): string = result = myQObject.m_name -method `name=`(myQObject: MyQObject, name: string) = +method setName(myQObject: MyQObject, name: string) = if myQObject.m_name != name: myQObject.m_name = name myQObject.emit("nameChanged") method onSlotCalled(myQObject: MyQObject, slotName: string, args: openarray[QVariant]) = case slotName: - of "name": - args[0].stringVal = myQObject.m_name - of "`name=`": - myQObject.m_name = args[1].stringVal - myQObject.emit("nameChanged") + of "getName": + args[0].stringVal = myQObject.getName() + of "setName": + myQObject.setName(args[1].stringVal) else: discard() @@ -32,10 +31,10 @@ proc mainProc() = myQObject.create() myQObject.m_name = "InitialName" finally: myQObject.delete() - myQObject.registerSlot("name", [QMetaType.QString]) - myQObject.registerSlot("`name=`", [QMetaType.Void, QMetaType.QString]) + myQObject.registerSlot("getName", [QMetaType.QString]) + myQObject.registerSlot("setName", [QMetaType.Void, QMetaType.QString]) myQObject.registerSignal("nameChanged", [QMetaType.Void]) - myQObject.registerProperty("name", QMetaType.QString, "name", "`name=`", "nameChanged") + myQObject.registerProperty("name", QMetaType.QString, "getName", "setName", "nameChanged") var engine: QQmlApplicationEngine engine.create()