<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 12pt;
font-family:Calibri
}
--></style></head>
<body class='hmmessage'><div dir='ltr'>No, I am able to invoke c++ methods from QML while having exposed them the exact same way.<br>The only difference would be that my constructor is a simple "Bloomfilters()".<br>So same question than J-P: what exactly isn't working?<br><br><div>> Date: Tue, 25 Feb 2014 16:31:13 +0100<br>> From: mikelima@gmail.com<br>> To: antonio.cano.gomez@ovi.com; devel@lists.sailfishos.org<br>> Subject: Re: [SailfishDevel] QML C++ Integration not working in Sailfish<br>> <br>> I think you need to add a qRegisterMetatype() to be able to invoke<br>> methods from qml.<br>> <br>> On Tue, Feb 25, 2014 at 3:06 PM, <antonio.cano.gomez@ovi.com> wrote:<br>> > Hi,<br>> ><br>> > I am trying to do a simple Sailfish aplication that uses a c++ library. I<br>> > try to connect my qml code with the C++ code.<br>> ><br>> > First I create QObject extended library:<br>> ><br>> > #ifndef BLOOMFILTERS_H<br>> > #define BLOOMFILTERS_H<br>> ><br>> ><br>> > #include <QObject><br>> > #include "svn/bloom-read-only/bloom_filter.hpp"<br>> ><br>> > class Bloomfilters : public QObject<br>> > {<br>> > Q_OBJECT<br>> ><br>> ><br>> > public:<br>> > Q_INVOKABLE void generateFilterInvokable2() const ;<br>> > Q_INVOKABLE void generateFilterInvokable(const QString &cadenaK, const<br>> > QString &cadenaM) const ;<br>> ><br>> ><br>> > explicit Bloomfilters(QObject *parent = 0);<br>> ><br>> > void generateFilter() ;<br>> ><br>> > Q_INVOKABLE void insertElement(const QString &cadena) ;<br>> ><br>> > Q_INVOKABLE bool checkElement(const QString &cadena) ;<br>> ><br>> ><br>> ><br>> ><br>> > signals:<br>> ><br>> ><br>> > public slots:<br>> ><br>> > private:<br>> > bloom_parameters _parameters ;<br>> > bloom_filter _filter;<br>> > bool _filter_charged;<br>> > QString _k;<br>> > };<br>> ><br>> > #endif // BLOOMFILTERS_H<br>> ><br>> ><br>> ><br>> > An I try to connect this with my sailfish application with the code:<br>> ><br>> > QGuiApplication *app = SailfishApp::application(argc, argv);<br>> > QQuickView *view = SailfishApp::createView();<br>> > Bloomfilters * bloomfilters = new Bloomfilters();<br>> > view->rootContext()->setContextProperty("Bloomfilters",<br>> > bloomfilters);<br>> > view->setSource(SailfishApp::pathTo("qml/bloomfilter.qml"));<br>> > view->showFullScreen();<br>> > return app->exec();<br>> ><br>> > But this is not working.<br>> ><br>> > Someone have any idea about what am I doing wrong?<br>> ><br>> > Best Regards!<br>> ><br>> ><br>> ><br>> > _______________________________________________<br>> > SailfishOS.org Devel mailing list<br>> <br>> <br>> <br>> -- <br>> Luciano Montanaro<br>> <br>> Anyone who is capable of getting themselves made President should on<br>> no account be allowed to do the job. -- Douglas Adams<br>> _______________________________________________<br>> SailfishOS.org Devel mailing list<br></div> </div></body>
</html>