From 9efd663b63cdb99d9aa92f8e39c402257b8ec300 Mon Sep 17 00:00:00 2001 From: "tg(x)" <*@tg-x.net> Date: Fri, 5 Feb 2016 22:52:52 +0100 Subject: enter/create place --- qml/PlaceCreate.qml | 2 +- qml/PlaceEnter.qml | 2 +- qml/main.qml | 1 + src/app.cpp | 5 +++-- src/app.h | 24 +++++++++++++++++++----- src/main.cpp | 3 --- src/model/PlaceListModel.h | 8 ++++---- src/nym/nym.h | 4 ++-- src/social/message.h | 24 +++++++++++++++--------- src/social/modifier.h | 20 ++++++++++++++++---- src/social/place.cpp | 2 -- src/social/place.h | 9 ++++++--- src/social/socialapp.cpp | 30 ++++++++++++++---------------- src/social/socialapp.h | 12 +----------- 14 files changed, 83 insertions(+), 63 deletions(-) diff --git a/qml/PlaceCreate.qml b/qml/PlaceCreate.qml index c077595..2206eb5 100644 --- a/qml/PlaceCreate.qml +++ b/qml/PlaceCreate.qml @@ -173,7 +173,7 @@ Rectangle { width: 200 onClicked: { - Psyc.gnunet.social.createPlace(nameField.text) + App.social.createPlace() // FIXME: nameField.text } } } diff --git a/qml/PlaceEnter.qml b/qml/PlaceEnter.qml index fd354bf..1eb09bb 100644 --- a/qml/PlaceEnter.qml +++ b/qml/PlaceEnter.qml @@ -212,7 +212,7 @@ Rectangle { width: 200 onClicked: { - Psyc.gnunet.social.enterPlace(publicKeyField.text, "bla") + App.social.enterPlace(publicKeyField.text, originField.text) } } } diff --git a/qml/main.qml b/qml/main.qml index 9440b1e..407ff32 100644 --- a/qml/main.qml +++ b/qml/main.qml @@ -147,6 +147,7 @@ Window { onCurrentIndexChanged: { console.log("left tabview index changed:", currentIndex) + switch (currentIndex) { case placesTab: diff --git a/src/app.cpp b/src/app.cpp index e6da32a..dc277cb 100644 --- a/src/app.cpp +++ b/src/app.cpp @@ -15,8 +15,8 @@ App *theApp; Settings *theSettings; QQuickWindow *theWindow; -App::App (QObject * parent): -QObject (parent) +App::App (QObject * parent) + : QObject (parent) { theApp = this; theSettings = new Settings (this); @@ -26,6 +26,7 @@ QObject (parent) m_qrProvider = new QrImageProvider (); m_social = new SocialApp (this); registerQmlTypes (); + setupTray (); } // theApp singleton type provider diff --git a/src/app.h b/src/app.h index 2b496d3..bd2dfc4 100644 --- a/src/app.h +++ b/src/app.h @@ -21,10 +21,23 @@ class App : public QObject { Q_OBJECT; - Q_PROPERTY (Models * models READ models CONSTANT); - Q_PROPERTY (Helpers * helpers READ helpers CONSTANT); - Q_PROPERTY (QrImageProvider * qrProvider READ qrProvider CONSTANT); - Q_PROPERTY (bool connected READ isConnected WRITE setConnected NOTIFY connectedChanged); + + Q_PROPERTY (Models * models + READ models CONSTANT); + + Q_PROPERTY (SocialApp * social + READ social CONSTANT); + + Q_PROPERTY (Helpers * helpers + READ helpers CONSTANT); + + Q_PROPERTY (QrImageProvider * qrProvider + READ qrProvider CONSTANT); + + Q_PROPERTY (bool connected + READ isConnected + WRITE setConnected + NOTIFY connectedChanged); public: @@ -64,7 +77,8 @@ public: } private: - Models * m_models; + + Models * m_models; Helpers *m_helpers; diff --git a/src/main.cpp b/src/main.cpp index 9cc5b8d..e13a3b3 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -28,9 +28,6 @@ main (int argc, char *argv[]) QObject::connect (&engine, SIGNAL (quit ()), &qapp, SLOT (quit ())); app.registerImageProvider (&engine); - // create tray icon - theApp->setupTray (); - theWindow->setTitle (QString ("secushare 0.1")); theWindow->setIcon (QIcon (":/assets/icon.ico")); theWindow->show (); diff --git a/src/model/PlaceListModel.h b/src/model/PlaceListModel.h index e703d50..7239040 100644 --- a/src/model/PlaceListModel.h +++ b/src/model/PlaceListModel.h @@ -33,13 +33,13 @@ class PlaceListModel : public QAbstractListModel public: - enum PlaceRoles + enum PlaceListRoles { NAME = Qt::UserRole + 1, PUBKEY, TYPE, STATUS, - NB_PLACE_COLUMNS + PLACELIST_ROLE_COUNT }; explicit @@ -78,14 +78,14 @@ class PlaceListModel : public QAbstractListModel private slots: Place * - addNewPlaceSlot (Place * item, QString name); + addNewPlaceSlot (Place *item, QString name); private: int rowCount (const QModelIndex & parent) const; QVariant - data (const QModelIndex & index, int role) const; + data (const QModelIndex &index, int role) const; QHash roleNames () const; diff --git a/src/nym/nym.h b/src/nym/nym.h index 550a79e..0cd444d 100644 --- a/src/nym/nym.h +++ b/src/nym/nym.h @@ -65,7 +65,7 @@ class Nym : public QObject m_pubKeyStr = QString::fromLatin1 (pubKeyChr); GNUNET_free (pubKeyChr); - if (!m_name.length ()) + if (m_name.isEmpty ()) { m_name = m_pubKeyStr.left (8); } @@ -74,7 +74,7 @@ class Nym : public QObject QString gnsUrl () { - return QString ("gnunet://gns/%1/").arg (m_pubKeyStr); + return QString ("gnunet://gns/%1").arg (m_pubKeyStr); } GNUNET_SOCIAL_Nym * diff --git a/src/social/message.h b/src/social/message.h index 2017ec9..600b251 100644 --- a/src/social/message.h +++ b/src/social/message.h @@ -10,31 +10,37 @@ class Message : public QObject { Q_OBJECT; - Q_PROPERTY (QString method READ method WRITE setMethod); - Q_PROPERTY (QString text READ text WRITE setText); + + Q_PROPERTY (QString method + READ method + WRITE setMethod); + + Q_PROPERTY (QString text + READ text + WRITE setText); public: explicit Message (QString method, - QList env, - QByteArray data, - GNUNET_SOCIAL_Nym *nym = NULL, + QList env = QList(), + QByteArray data = "", + GNUNET_SOCIAL_Nym *nym = 0, QObject *parent = 0); explicit Message (QString method, QList env, QString text, - GNUNET_SOCIAL_Nym *nym = NULL, + GNUNET_SOCIAL_Nym *nym = 0, QObject *parent = 0); explicit Message (const char *method, GNUNET_PSYC_Environment *env, - const void *data, - size_t data_size, - GNUNET_SOCIAL_Nym *nym = NULL, + const void *data = 0, + size_t data_size = 0, + GNUNET_SOCIAL_Nym *nym = 0, QObject *parent = 0); GNUNET_PSYC_Message * diff --git a/src/social/modifier.h b/src/social/modifier.h index 8256517..ff75f97 100644 --- a/src/social/modifier.h +++ b/src/social/modifier.h @@ -7,10 +7,22 @@ class Modifier : public QObject { Q_OBJECT; - Q_PROPERTY (GNUNET_PSYC_Operator oper READ oper WRITE setOper); - Q_PROPERTY (QString name READ name WRITE setName); - Q_PROPERTY (QByteArray value READ value WRITE setValue); - Q_PROPERTY (QString text READ text WRITE setText); + + Q_PROPERTY (GNUNET_PSYC_Operator oper + READ oper + WRITE setOper); + + Q_PROPERTY (QString name + READ name + WRITE setName); + + Q_PROPERTY (QByteArray value + READ value + WRITE setValue); + + Q_PROPERTY (QString text + READ text + WRITE setText); public: diff --git a/src/social/place.cpp b/src/social/place.cpp index f421825..72c5693 100644 --- a/src/social/place.cpp +++ b/src/social/place.cpp @@ -14,8 +14,6 @@ */ Place::Place (QObject *parent) : QObject (parent) { - m_status = "No status"; - m_name = "No name"; m_type = "group"; //thread;group;contact m_isHost = false; diff --git a/src/social/place.h b/src/social/place.h index 01cfbec..7d2eac7 100644 --- a/src/social/place.h +++ b/src/social/place.h @@ -2,6 +2,7 @@ #define PLACE_H #include +#include "message.h" #include "gnunet.h" #define DATA2ARG(data) data, sizeof (data) @@ -112,11 +113,13 @@ class Place : public QObject QString m_name; - QString m_type; + QString m_type; // FIXME - QString m_status; + QString m_status; // FIXME - QString m_content; + QString m_content; // FIXME + + QList m_messages; QString m_pubKeyStr; diff --git a/src/social/socialapp.cpp b/src/social/socialapp.cpp index cf0d5c2..10b6be2 100644 --- a/src/social/socialapp.cpp +++ b/src/social/socialapp.cpp @@ -10,11 +10,6 @@ SocialApp::SocialApp (QObject *parent) : QObject (parent) { - connect (this, &SocialApp::createPlaceSignal, this, - &SocialApp::createPlaceSlot, Qt::QueuedConnection); - - connect (this, &SocialApp::enterPlaceSignal, this, - &SocialApp::enterPlaceSlot, Qt::QueuedConnection); } @@ -77,21 +72,30 @@ SocialApp::guestPlaceCallback (void *cls, void SocialApp::createPlaceSlot () { - GNUNET_log (GNUNET_ERROR_TYPE_WARNING, "Creating a New Place.\n"); - m_places += new Host (m_app, m_curEgo); // FIXME: ego } -void +bool SocialApp::createPlace () { - emit createPlaceSignal (); + GNUNET_log (GNUNET_ERROR_TYPE_WARNING, "Creating a New Place.\n"); + if (NULL == m_app || NULL == ) + + Host *host = new Host (m_app, m_curEgo); // FIXME: ego + m_places += host; + //emit createPlaceSignal (); } void SocialApp::enterPlaceSlot (QString pubKeyStr, QString peerIdStr) +{ +} + + +void +SocialApp::enterPlace (QString pubKeyStr, QString peerIdStr) { GNUNET_log (GNUNET_ERROR_TYPE_WARNING, "Entering to place %s as guest.\n", pubKeyStr.toStdString ().c_str ()); @@ -108,11 +112,5 @@ SocialApp::enterPlaceSlot (QString pubKeyStr, QString peerIdStr) peerIdStr.length (), &peerId.public_key); m_places += new Guest (m_app, m_curEgo, pubKey, &peerId); -} - - -void -SocialApp::enterPlace (QString pubKey, QString peerId) -{ - emit enterPlaceSignal (pubKey, peerId); +// emit enterPlaceSignal (pubKey, peerId); } diff --git a/src/social/socialapp.h b/src/social/socialapp.h index 7ca3c27..1dc5776 100644 --- a/src/social/socialapp.h +++ b/src/social/socialapp.h @@ -17,18 +17,8 @@ class SocialApp : public QObject void start (GNUNET_CONFIGURATION_Handle * config); - void createPlaceSlot (); Q_INVOKABLE void createPlace (); - Q_INVOKABLE void enterPlace (QString pubKey, QString peerIdentity); - - signals: - - void createPlaceSignal (); - void enterPlaceSignal (QString pubKey, QString peerIdentity); - - public slots: - - void enterPlaceSlot (QString pubKey, QString peerIdentity); + Q_INVOKABLE void enterPlace (QString pubKeyStr, QString peerIdStr); private: -- cgit v1.2.3