How to append function object to an ListElement and callback when the element clicked

Like 'LauncherList' in Qt5.3 examples, I defined a common listview just replacing the url in function 'addExample' with a callback function object. In Component.onCompleted, use addExample to set every element's callback while clicked.
I wanted the callback object can be called when list element clicked, but it was failed. After the callback function object append to listElement, its type was 'object', not 'function' anymore. How can I call the callback object?
Thanks a lot!

You see the changes? The trick is to pass the object where the functions are defined (scope) to the model and use call with a string (the name of the function). You can also pass parameters. Everything after the function name will pass as parameter like: cmp.call(callback, param1, param2,...) I'm not at home so no guaranty :)

Thank you dasRicardo! but still has errors.
'qrc:///func.js:4: TypeError: Property 'call' of object [object Object] is not a function'

Now I used switch case to call different functions.
In
@signal clicked
onClicked: {
onElementClicked(callback_key)
}@
always call the same interface.
onElementClicked is defined at where I using the list view.

I just confused why some type like 'string' or 'int' can keep its real type after listview.append, but funtion type can not.