[SailfishDevel] Sailfish and BidData

2014-02-28 Thread antonio . cano . gomez
Hi!

I am interested in provide sailfish with some technology for big data.

Someone knows is there is already some project going on?

Best Regards and Thanks,

A. Cano
___
SailfishOS.org Devel mailing list

Re: [SailfishDevel] QML C++ Integration not working in Sailfish

2014-02-27 Thread antonio . cano . gomez
Hi sylvain,

This is not the case a renamed the variable so the have exactly the same name.

On the other hand, may be the problem is that I am calling it from .js file by 
the next code:

.pragma library
.import QtQuick 2.0 as QQ

var appState;

function getAppState() { return appState; }


function newAppState(page)
{
    appState = page;
    getAppState().k=1;
    getAppState().m=2;

    return appState;
}

// Funciones especificas

function createBloomFilter() {
    console.log(Voy a llamar a generate filter)
    bloomfiltersdata.generateFilterInvokable2()
    console.log(Ya he llamado a generate filter)
}


And I call this from the qml by:


import QtQuick 2.0
import Sailfish.Silica 1.0
import pages

import pages/content
import pages/content/logic.js as Logic
import fi.helsinki.cs 1.0

ApplicationWindow
{
    initialPage: Component { FirstPage { } }
    cover: Qt.resolvedUrl(cover/CoverPage.qml)
    id: appWin
    property var appState: Logic.newAppState(appWin);
    property ApplicationWindow appWin: appWin
    property Bloomfilters bloomfilters: bloomfilters
    property var k
    property var m
    property bool filterCharged: false
}


Someone seems something unusual in this code?

Best Regards and Thanks,

A. Cano




El Miércoles 26 de febrero de 2014 13:24, Sylvain B. sth...@hotmail.com 
escribió:
 
Yes, add a s
You declared bloomfiltersdata and you are trying to use bloomfilterdata...





Date: Wed, 26 Feb 2014 04:02:22 -0800
From: antonio.cano.go...@ovi.com
To: devel@lists.sailfishos.org
Subject: Re: [SailfishDevel] QML C++ Integration not working in Sailfish


Hi Andrey,

The output is: ReferenceError: bloomfilterdata is not defined

I am calling it from a .js

Some idea about how can I  make that this is also defined there.

Thanks!






El Miércoles 26 de febrero de 2014 12:18, Andrey Kozhevnikov 
coderusin...@gmail.com escribió:
 
start app in terminal and show output please


On 26.02.2014 17:15, antonio.cano.go...@ovi.com wrote:

Hi Thomas,

I did both modification but the code does not work yet.

Here is the new code:

    QGuiApplication *app = SailfishApp::application(argc,
argv);
    QQuickView *view = SailfishApp::createView();

    Bloomfilters  * bloomfilters = new Bloomfilters();
   
view-rootContext()-setContextProperty(bloomfiltersdata,
bloomfilters);
   
view-setSource(SailfishApp::pathTo(qml/bloomfilter.qml));
    view-showFullScreen();

    return app-exec();


El Miércoles 26 de febrero de 2014 12:01, Thomas Perl th.p...@gmail.com 
escribió:
 
On 2014-02-26 11:48, antonio.cano.go...@ovi.com wrote: 

 I tried this:

        QGuiApplication *app =
SailfishApp::application(argc, argv);
        QQuickView *view =
SailfishApp::createView();
        Bloomfilters  * bloomfilters = new
Bloomfilters();

view-setSource(SailfishApp::pathTo(qml/bloomfilter.qml));
        view-showFullScreen();

view-rootContext()-setContextProperty(Bloomfilters,
bloomfilters);
        return app-exec();

 But it is not working yet.

Two things:

  1. Call setContextProperty() right before before
  setSource(), so it's 
already available when the QML content is loaded.
  2. Use lowercase for context property names
  (bloomfilters instead of 
Bloomfilters). In some places, QML interprets IDs
  starting with an 
upper case letter as a type name, and that won't work
  then, therefore 
stick to lowercase.


HTH :)
Thomas 






___
SailfishOS.org Devel mailing list


___
SailfishOS.org Devel mailing list


___
SailfishOS.org Devel mailing list

___
SailfishOS.org Devel mailing list

Re: [SailfishDevel] QML C++ Integration not working in Sailfish

2014-02-27 Thread antonio . cano . gomez
Yes, it helped thanks.

My problem now is different.

I have some private attributes in my C++ object.

When I call the first tiem I can modify the attributes, but in the second call 
the attributes dessapear.

Is there a way to solve this problem?

(The attributes a new C++ Object not declared as QObject)





El Jueves 27 de febrero de 2014 12:32, Stefan Brand 
stefan.br...@seiichiro0185.org escribió:
 
Hi,

On 25.02.2014 15:06, antonio.cano.go...@ovi.com wrote:
 An I try to connect this with my sailfish application with the code:
 
  QGuiApplication *app = SailfishApp::application(argc, argv);
  QQuickView *view = SailfishApp::createView();
  Bloomfilters * bloomfilters = new Bloomfilters();
  view-rootContext()-setContextProperty(Bloomfilters,
 bloomfilters);
  view-setSource(SailfishApp::pathTo(qml/bloomfilter.qml));
  view-showFullScreen();
  return app-exec();
 
 But this is not working.
 
 Someone have any idea about what am I doing wrong?
 

You can use qmlRegisterType to pass the Info of the C++ class to QML 
like this in the cpp:

#include bloomfilters.h

int main(int argc, char *argv[])
{
   // Get App and QML-View objects
   QScopedPointerQGuiApplication app(SailfishApp::application(argc, 
argv));
   QScopedPointerQQuickView view(SailfishApp::createView());

   // Register Bloomfilter Class
   qmlRegisterTypeBloomfilter, 1(harbour.myapp.Bloomfilter, 1, 0, 
Bloomfilter);

   // Prepare the QML
   view-setSource(SailfishApp::pathTo(qml/bloomfilter.qml));
   view-show();

   // Run the app
   return app-exec();
}

Afterwards you can create a Bloomfilter-Object in QML:

Bloomfilter {
   id: bloom
}

and use the methods with

bloom.insertElement(myelement)

I hope this helps.


Regards

Stefan Brand
___
SailfishOS.org Devel mailing list



___
SailfishOS.org Devel mailing list

Re: [SailfishDevel] QML C++ Integration not working in Sailfish

2014-02-26 Thread antonio . cano . gomez
Hi J-P,

It is not working as I try to call the method generateFilterInvokable2()

in the function:

function createBloomFilter() {
    getAppState().filterCharged = true;
    Bloomfilters.generateFilterInvokable2()
    console.log(Called)
}


And as result Called is never printed. So I guess that it crashes.




El Miércoles 26 de febrero de 2014 0:30, Sylvain B. sth...@hotmail.com 
escribió:
 
No, I am able to invoke c++ methods from QML while having exposed them the 
exact same way.
The only difference would be that my constructor is a simple Bloomfilters().
So same question than J-P: what exactly isn't working?


 Date: Tue, 25 Feb 2014 16:31:13 +0100
 From: mikel...@gmail.com
 To: antonio.cano.go...@ovi.com; devel@lists.sailfishos.org
 Subject: Re: [SailfishDevel] QML C++ Integration not working in Sailfish
 
 I think you need to add a qRegisterMetatype() to be able to invoke
 methods from qml.
 
 On Tue, Feb 25, 2014 at 3:06 PM,  antonio.cano.go...@ovi.com wrote:
  Hi,
 
  I am trying to do a simple Sailfish aplication that uses a c++ library.  I
  try to connect my qml code with the C++ code.
 
  First I create QObject extended library:
 
  #ifndef BLOOMFILTERS_H
  #define BLOOMFILTERS_H
 
 
  #include QObject
  #include svn/bloom-read-only/bloom_filter.hpp
 
  class Bloomfilters : public QObject
  {
  Q_OBJECT
 
 
  public:
  Q_INVOKABLE  void generateFilterInvokable2() const ;
  Q_INVOKABLE  void generateFilterInvokable(const QString cadenaK, const
  QString cadenaM) const ;
 
 
  explicit Bloomfilters(QObject *parent = 0);
 
  void generateFilter() ;
 
  Q_INVOKABLE void insertElement(const QString cadena) ;
 
  Q_INVOKABLE bool checkElement(const QString cadena) ;
 
 
 
 
  signals:
 
 
  public slots:
 
  private:
  bloom_parameters _parameters ;
  bloom_filter _filter;
  bool _filter_charged;
  QString _k;
  };
 
  #endif // BLOOMFILTERS_H
 
 
 
  An I try to connect this with my sailfish application with the code:
 
  QGuiApplication *app = SailfishApp::application(argc, argv);
  QQuickView *view = SailfishApp::createView();
  Bloomfilters  * bloomfilters = new Bloomfilters();
  view-rootContext()-setContextProperty(Bloomfilters,
  bloomfilters);
  view-setSource(SailfishApp::pathTo(qml/bloomfilter.qml));
  view-showFullScreen();
  return app-exec();
 
  But this is not working.
 
  Someone have any idea about what am I doing wrong?
 
  Best Regards!
 
 
 
  ___
  SailfishOS.org Devel mailing list
 
 
 
 -- 
 Luciano Montanaro
 
 Anyone who is capable of getting themselves made President should on
 no account be allowed to do the job. -- Douglas Adams

 ___
 SailfishOS.org Devel mailing list


___
SailfishOS.org Devel mailing list

___
SailfishOS.org Devel mailing list

Re: [SailfishDevel] QML C++ Integration not working in Sailfish

2014-02-26 Thread antonio . cano . gomez
Hi Andrey,

The output is: ReferenceError: bloomfilterdata is not defined

I am calling it from a .js

Some idea about how can I  make that this is also defined there.

Thanks!





El Miércoles 26 de febrero de 2014 12:18, Andrey Kozhevnikov 
coderusin...@gmail.com escribió:
 
start app in terminal and show output please


On 26.02.2014 17:15, antonio.cano.go...@ovi.com wrote:

Hi Thomas,

I did both modification but the code does not work yet.

Here is the new code:

    QGuiApplication *app = SailfishApp::application(argc,
argv);
    QQuickView *view = SailfishApp::createView();

    Bloomfilters  * bloomfilters = new Bloomfilters();
   
view-rootContext()-setContextProperty(bloomfiltersdata,
bloomfilters);
   
view-setSource(SailfishApp::pathTo(qml/bloomfilter.qml));
    view-showFullScreen();

    return app-exec();


El Miércoles 26 de febrero de 2014 12:01, Thomas Perl th.p...@gmail.com 
escribió:
 
On 2014-02-26 11:48, antonio.cano.go...@ovi.com wrote: 

 I tried this:

        QGuiApplication *app =
SailfishApp::application(argc, argv);
        QQuickView *view =
SailfishApp::createView();
        Bloomfilters  * bloomfilters = new
Bloomfilters();

view-setSource(SailfishApp::pathTo(qml/bloomfilter.qml));
        view-showFullScreen();

view-rootContext()-setContextProperty(Bloomfilters,
bloomfilters);
        return app-exec();

 But it is not working yet.

Two things:

  1. Call setContextProperty() right before before
  setSource(), so it's 
already available when the QML content is loaded.
  2. Use lowercase for context property names
  (bloomfilters instead of 
Bloomfilters). In some places, QML interprets IDs
  starting with an 
upper case letter as a type name, and that won't work
  then, therefore 
stick to lowercase.


HTH :)
Thomas 






___
SailfishOS.org Devel mailing list


___
SailfishOS.org Devel mailing list

___
SailfishOS.org Devel mailing list