JDMainWin::JDMainWin(const QString &name, const QString &jid, int acc, QWidget *p) : QDialog(p, Qt::Window) , model_(0) , commands_(0) , refreshInProgres_(false) , yourJid_(name) { setAttribute(Qt::WA_DeleteOnClose); ui_.setupUi(this); setWindowTitle(tr("Jabber Disk - %1").arg(name)); model_ = new JDModel(jid, this); ui_.lv_disk->setModel(model_); commands_ = new JDCommands(acc, jid, this); ui_.pb_send->setShortcut(QKeySequence("Ctrl+Return")); connect(commands_, SIGNAL(incomingMessage(QString,JDCommands::Command)), SLOT(incomingMessage(QString,JDCommands::Command))); connect(commands_, SIGNAL(outgoingMessage(QString)), SLOT(outgoingMessage(QString))); connect(ui_.pb_refresh, SIGNAL(clicked()), SLOT(refresh())); connect(ui_.pb_send, SIGNAL(clicked()), SLOT(doSend())); connect(ui_.pb_clear, SIGNAL(clicked()), SLOT(clearLog())); connect(ui_.lv_disk, SIGNAL(newIndex(QModelIndex)), SLOT(indexChanged(QModelIndex))); connect(ui_.lv_disk, SIGNAL(contextMenu(QModelIndex)), SLOT(indexContextMenu(QModelIndex))); connect(model_, SIGNAL(moveItem(QString,QString)), SLOT(moveItem(QString,QString))); show(); QTimer::singleShot(0, this, SLOT(refresh())); }
void CChatSessionG2::OnCMSG(G2Packet *pPacket) { if( !pPacket->m_bCompound || m_nState < csConnected ) return; char szType[9]; quint32 nLength = 0, nNext = 0; QString sMessage; bool bAction = false; while(pPacket->ReadPacket(&szType[0], nLength)) { nNext = pPacket->m_nPosition + nLength; if(strcmp("BODY", szType) == 0) { sMessage = pPacket->ReadString(nLength); } else if (strcmp("ACT", szType) == 0 ) { bAction = true; } pPacket->m_nPosition = nNext; } if( !sMessage.isEmpty() ) { emit incomingMessage(sMessage, bAction); } }
void *UdpServer::startUdpServerThread(void *ptr) { int sock = ((UdpServer*)ptr)->getSock(); struct sockaddr_in sender; sender.sin_family = AF_INET; socklen_t sendsize = sizeof(sender); bzero(&sender, sizeof(sender)); connection_t * connection; cout << "server gestartet!" << endl; while (((UdpServer *)ptr)->getIsActive()) { cout << "warte auf Broadcast..." << endl; connection = (connection_t *)malloc(sizeof(connection_t)); NetworkMessage incomingMessage(LOGINREQUEST); connection->sock = recvfrom(sock,&incomingMessage,sizeof(NetworkMessage),0,(struct sockaddr*)&sender, &sendsize); if (connection->sock <= 0){ free(connection); } else{ cout << "Verbindungen eingegangen(UDP)..SOCK: " << connection->sock << endl; processThread((struct sockaddr_in)sender,ptr,incomingMessage); //close(connection->sock); free(connection); } cout << "Boradcast eigegangen!" << endl; } pthread_exit((void*) true); }
void JDCommands::incomingStanza(int account, const QDomElement &xml) { if(account != account_ || xml.attribute("from").split("/").at(0).toLower() != jid_) return; emit incomingMessage(xml.firstChildElement("body").text(), lastCommand_); lastCommand_ = CommandNoCommand; timeOut(); }
void testQOfonoMessageManager() { QSignalSpy sendMessage(m, SIGNAL(sendMessageComplete(bool, QString))); QSignalSpy messageAdded(m, SIGNAL(messageAdded(QString))); QSignalSpy messageRemoved(m, SIGNAL(messageRemoved(QString))); QSignalSpy immediateMessage(m, SIGNAL(immediateMessage(QString, QVariantMap))); QSignalSpy incomingMessage(m, SIGNAL(incomingMessage(QString, QVariantMap))); QStringList messages = m->messages(); QVERIFY(messages.count() == 0); m->sendMessage("99999", "success"); QTest::qWait(1000); QCOMPARE(sendMessage.count(), 1); QVariantList params = sendMessage.takeFirst(); QCOMPARE(params.at(0).toBool(), true); QString objectPath = params.at(1).value<QString>(); QVERIFY(objectPath.length() > 0); qDebug() << objectPath; QCOMPARE(messageAdded.count(), 1); QCOMPARE(messageRemoved.count(), 1); QString messageId = messageAdded.takeFirst().at(0).toString(); QOfonoMessage* message = new QOfonoMessage(); message->setMessagePath(messageId); QSignalSpy state(message, SIGNAL(stateChanged(const QString))); qDebug() << message->state(); m->sendMessage("abc", "fail"); QTest::qWait(1000); QCOMPARE(sendMessage.count(), 1); params = sendMessage.takeFirst(); QCOMPARE(params.at(0).toBool(), false); objectPath = params.at(1).value<QString>(); QVERIFY(objectPath.length() == 0); }
void WalletView::processNewMessage(const QModelIndex& parent, int start, int /*end*/) { // Prevent balloon-spam when initial block download is in progress if(!messageModel) return; MessageModel *mm = messageModel; QString sent_datetime = mm->index(start, MessageModel::ReceivedDateTime, parent).data().toString(); QString from_address = mm->index(start, MessageModel::FromAddress, parent).data().toString(); QString to_address = mm->index(start, MessageModel::ToAddress, parent).data().toString(); QString message = mm->index(start, MessageModel::Message, parent).data().toString(); int type = mm->index(start, MessageModel::TypeInt, parent).data().toInt(); emit incomingMessage(sent_datetime, from_address, to_address, message, type); }
MainWindow::MainWindow():MApplicationWindow() { QString IPaddr="127.0.0.1"; int port=3425; page1=new HomePage(this); page2 =new LoginPage(this); page3=new RegistrationPage(this); page4=new SettingPage(this); page5 =new InfoPage(this); page6 = new ContactlistPage(); page7=new DialogPage(this); sock=QSharedPointer<QTcpSocket>( new QTcpSocket()); sock->connectToHost(IPaddr,port); thread1=new SendThread(sock); thread2=new RecvThread(sock); thread1->start(); thread2->start(); page1->appear(); //переходы со страницы home на все остальные QObject::connect(page1,SIGNAL(goLoginPage()),this,SLOT(GoLoginPage())); QObject::connect(page1,SIGNAL(exiting()),this,SLOT(close())); QObject::connect(page1,SIGNAL(goRegistrationPage()),page3,SLOT(appear())); QObject::connect(page1,SIGNAL(goSettingPage()),page4,SLOT(appear())); QObject::connect(page1,SIGNAL(goContactListPage()),this,SLOT(GoContactListPage())); QObject::connect(page2,SIGNAL(goHomePage()),this,SLOT(GoHomePage())); QObject::connect(page1,SIGNAL(goInfoPage()),page5,SLOT(appear())); QObject::connect(page2,SIGNAL(readySend(QString)),thread1,SLOT(writeToServer(QString))); QObject::connect(page3,SIGNAL(readySend(QString)),thread1,SLOT(writeToServer(QString))); QObject::connect(page7,SIGNAL(readySend(QString)),thread1,SLOT(writeToServer(QString))); QObject::connect(page4,SIGNAL(changeSettings()),this,SLOT(ApplyNewSettings())); QObject::connect(thread2,SIGNAL(readyMessage(QSharedPointer<IMessage>)),this,SLOT(ListenServer(QSharedPointer<IMessage>))); QObject::connect(page6,SIGNAL(goDialogPage(QString)),this,SLOT(GoDialogPage(QString))); //***Signal incomingMessage(QString) should be replaced real signal about incoming message for user.*** QObject::connect(this, SIGNAL(incomingMessage(QString)),page6, SLOT(displayMessage(QString))); //***************************************************************************************************** }
void QOfonoMessageManager::setModemPath(const QString &path) { if (path == d_ptr->modemPath || path.isEmpty()) return; if (path != modemPath()) { if (d_ptr->messageManager) { delete d_ptr->messageManager; d_ptr->messageManager = 0; d_ptr->properties.clear(); } d_ptr->messageManager = new OfonoMessageManager("org.ofono", path, QDBusConnection::systemBus(),this); if (d_ptr->messageManager->isValid()) { d_ptr->modemPath = path; connect(d_ptr->messageManager,SIGNAL(PropertyChanged(QString,QDBusVariant)), this,SLOT(propertyChanged(QString,QDBusVariant))); connect(d_ptr->messageManager,SIGNAL(ImmediateMessage(QString,QVariantMap)), this,SIGNAL(immediateMessage(QString,QVariantMap))); connect(d_ptr->messageManager,SIGNAL(IncomingMessage(QString,QVariantMap)), this,SIGNAL(incomingMessage(QString,QVariantMap))); QDBusPendingReply<QVariantMap> reply; reply = d_ptr->messageManager->GetProperties(); reply.waitForFinished(); d_ptr->properties = reply.value(); QDBusMessage request = QDBusMessage::createMethodCall("org.ofono", path, "org.ofono.MessageManager", "GetMessages"); QDBusConnection::systemBus().callWithCallback(request, this, SLOT(getMessagesFinished(ObjectPathPropertiesList)), SLOT(messagesError(QDBusError))); } } }
int RpcConnection::qt_metacall(QMetaObject::Call _c, int _id, void **_a) { _id = QObject::qt_metacall(_c, _id, _a); if (_id < 0) return _id; if (_c == QMetaObject::InvokeMetaMethod) { switch (_id) { case 0: incomingMessage((*reinterpret_cast< QVariantMap(*)>(_a[1])),(*reinterpret_cast< RpcChannel*(*)>(_a[2]))); break; case 1: channelOpened((*reinterpret_cast< RpcChannel*(*)>(_a[1]))); break; case 2: channelClosed((*reinterpret_cast< RpcChannel*(*)>(_a[1]))); break; case 3: unregisterSender(); break; case 4: sendMessage((*reinterpret_cast< QVariantMap(*)>(_a[1])),(*reinterpret_cast< RpcChannel*(*)>(_a[2]))); break; case 5: sendMessage((*reinterpret_cast< QVariantMap(*)>(_a[1]))); break; case 6: newChannel((*reinterpret_cast< RpcChannel*(*)>(_a[1]))); break; case 7: channelIncomingMessage((*reinterpret_cast< QVariantMap(*)>(_a[1]))); break; case 8: channelDisconnected((*reinterpret_cast< RpcChannel*(*)>(_a[1]))); break; default: ; } _id -= 9; } return _id; }
void MainWindow::ListenServer(QSharedPointer<IMessage> mes) { mes->Parse(); if ("ser*ver"==mes->GetPart("s")) { if ("good login-password"==mes->GetPart("m")) { MMessageBox* r=new MMessageBox("Title","Welcom",M::OkButton); r->appear(this); page6->appear(); } if ("good registration"==mes->GetPart("m")) { MMessageBox* r=new MMessageBox("Title","Your ID : "+mes->GetPart("id"),M::OkButton); r->appear(this); page2->appear(); } if(mes->GetPart("m")=="login is already used") { MMessageBox* r=new MMessageBox("Error!","This user online already",M::OkButton); r->appear(this); } if(mes->GetPart("m")=="Error of password") { MMessageBox* r=new MMessageBox("Error!","Error of password",M::OkButton); r->appear(this); } if(mes->GetPart("m")=="Error of login") { MMessageBox* r=new MMessageBox("Error!","This login doesn`t find in contacts base",M::OkButton); r->appear(this); } if(mes->GetPart("m")=="Login already exist") { MMessageBox* r=new MMessageBox("Error!","Login already exist",M::OkButton); r->appear(this); } } else { if ("connect"==mes->GetPart("o")) { page6->Add(mes->GetPart("id"),mes->GetPart("s"),mes->GetPart("o")); } if ("disconnect"==mes->GetPart("o")) { page6->Remove(mes->GetPart("id")); } if (mes->GetPart("o").isEmpty()) { qCritical()<<">>sender"<<mes->GetPart("id"); qCritical()<<">>message"<<mes->GetPart("m"); if(this->currentPage()==page7) { page7->Display(mes->GetPart("id"),mes->GetPart("m")); } else { page7->Display(mes->GetPart("id"),mes->GetPart("m")); emit incomingMessage(mes->GetPart("id"));//!!!!!!!!!!!!!!! } } } mes.clear();; }
void GatewayTask::processIncomingMessage(const QString& senderUin, const QString& message, const QDateTime& timestamp) { GET_JID_BY_SENDER(user_bare,user); QString msg = QString(message).replace('\r', ""); emit incomingMessage(user, senderUin, msg, session->contactName(senderUin), timestamp.toUTC()); }
void GatewayTask::processUserOnline(const XMPP::Jid& user, int showStatus) { bool first_login = UserManager::instance()->getOption(user.bare(), "first_login").toBool(); if ( d->icqHost.isEmpty() || !d->icqPort ) { qCritical("[GT] processLogin: icq host and/or port values are not set. Aborting..."); return; } ICQ::Session::OnlineStatus icqStatus = xmmpToIcqStatus(XMPP::Presence::Show(showStatus)); if ( d->jidIcqTable.contains( user.bare() ) ) { ICQ::Session *conn = d->jidIcqTable.value( user.bare() ); conn->setOnlineStatus(icqStatus); d->jidResources.insert(user.bare(), user); return; } if ( UserManager::instance()->isRegistered(user.bare()) ) { QString uin = UserManager::instance()->getUin(user.bare()); QString password = UserManager::instance()->getPassword(user.bare()); ICQ::Session *conn = new ICQ::Session(this); conn->setUin(uin); conn->setPassword(password); conn->setServerHost(d->icqHost); conn->setServerPort(d->icqPort); conn->setOnlineStatus(ICQ::Session::Online); QObject::connect( conn, SIGNAL( statusChanged(int) ), SLOT( processIcqStatus(int) ) ); QObject::connect( conn, SIGNAL( userOnline(QString,int) ), SLOT( processContactOnline(QString,int) ) ); QObject::connect( conn, SIGNAL( userOffline(QString) ), SLOT( processContactOffline(QString) ) ); QObject::connect( conn, SIGNAL( authGranted(QString) ), SLOT( processAuthGranted(QString) ) ); QObject::connect( conn, SIGNAL( authDenied(QString) ), SLOT( processAuthDenied(QString) ) ); QObject::connect( conn, SIGNAL( authRequest(QString) ), SLOT( processAuthRequest(QString) ) ); QObject::connect( conn, SIGNAL( incomingMessage(QString,QString) ), SLOT( processIncomingMessage(QString,QString) ) ); QObject::connect( conn, SIGNAL( incomingMessage(QString,QString,QDateTime) ), SLOT( processIncomingMessage(QString,QString,QDateTime) ) ); QObject::connect( conn, SIGNAL( connected() ), SLOT( processIcqSignOn() ) ); QObject::connect( conn, SIGNAL( disconnected() ), SLOT( processIcqSignOff() ) ); QObject::connect( conn, SIGNAL( error(QString) ), SLOT( processIcqError(QString) ) ); QObject::connect( conn, SIGNAL( shortUserDetailsAvailable(QString) ), SLOT( processShortUserDetails(QString) ) ); if ( first_login ) { QObject::connect( conn, SIGNAL( rosterAvailable() ), SLOT( processIcqFirstLogin() ) ); } d->jidIcqTable.insert(user.bare(), conn); d->icqJidTable.insert(conn, user.bare()); d->jidResources.insert(user.bare(), user); QTextCodec *codec; if ( UserManager::instance()->hasOption(user.bare(), "encoding") ) { codec = QTextCodec::codecForName( UserManager::instance()->getOption(user.bare(), "encoding").toByteArray() ); if ( codec == 0 ) { codec = QTextCodec::codecForName("windows-1251"); } } else { codec = QTextCodec::codecForName("windows-1251"); } Q_ASSERT( codec != 0 ); conn->setCodecForMessages(codec); conn->connect(); } }
Rekall::Rekall(const QStringList &arguments, QWidget *parent) : QDialog(parent) { trayIconWorking = false; trayIconIndex = 0; trayIconIndexOld = 9999; Global::rekall = this; qApp->setAttribute(Qt::AA_UseHighDpiPixmaps); //Update updateManager = 0; forceUpdate = false; firstTimeOpened = newVersionOfRekall = false; if(arguments.contains("-forceupdate")) forceUpdate = true; //Tray icon trayTimer.setInterval(500); connect(&trayTimer, SIGNAL(timeout()), SLOT(trayIconToOnPrivate())); connect(&trayTimerOff, SIGNAL(timeout()), SLOT(trayIconToOffPrivate())); QString prefix = "mac"; #ifdef Q_OS_WIN prefix = "win"; #endif for(quint16 i = 0 ; i <= 17 ; i++) trayIcons << QIcon(QString(":/icons/rekall-menubar-%1-%2.png").arg(prefix).arg(i, 2, 10, QChar('0'))); trayIcon = new QSystemTrayIcon(this); trayIconToOffPrivate(); trayTimer.start(); connect(trayIcon, SIGNAL(activated(QSystemTrayIcon::ActivationReason)), SLOT(trayActivated(QSystemTrayIcon::ActivationReason))); //Interfaces Global::userInfos = new UserInfos(this); Global::http = new Http(this); Analyse *analyse = new Analyse(this); Global::analyse = analyse; connect(analyse, SIGNAL(trayChanged(QString,bool)), SLOT(analyseTrayChanged(QString,bool))); connect(analyse, SIGNAL(trayIconToOff()), SLOT(trayIconToOff())); connect(analyse, SIGNAL(trayIconToOn(qint16)), SLOT(trayIconToOn(qint16))); //Wrapper web Global::userInfos->setDockIcon(this, false); Global::webWrapper = new WebWrapper(); /* VideoPlayer *player = new VideoPlayer(); player->open(QUrl::fromLocalFile("/Users/guillaume/Documents/Rekall/Walden/Captations/captation WALDEN_TPV.mov")); player->seek(4000); */ trayMenu = new QMenu(this); trayMenu->setSeparatorsCollapsible(true); trayAnalyse = trayMenu->addAction(tr("File analysis…")); trayAnalysePause = trayMenu->addAction(tr("Pause analysis")); trayAnalysePause->setCheckable(true); connect(trayAnalysePause, SIGNAL(toggled(bool)), SLOT(trayAnalysePaused())); trayMenu->addSeparator(); trayMenu->addAction(tr("Open welcome page"), this, SLOT(openWebPage())); trayMenu->addAction(tr("Open welcome page in webrowser"), this, SLOT(openWebPageInBrowser())); //trayMenu->addAction(tr("Create a new project"), this, SLOT(addProject())); trayMenu->addSeparator(); trayMenuProjects = trayMenu->addAction(tr("Quit Rekall"), this, SLOT(closeRekall())); trayIcon->setContextMenu(trayMenu); trayIcon->show(); trayIconToOnPrivate(); QSettings settings; quint16 projectCount = settings.beginReadArray("projects"); /* if(projectCount == 0) { addProject(new Project("walden", "Walden", true, QFileInfo("/Users/guillaume/Documents/Rekall/Walden"), this)); addProject(new Project("joris-test", "Joris", false, QFileInfo("/Users/guillaume/Documents/Rekall/joris-test"), this)); } */ connect(Global::udp, SIGNAL(outgoingMessage(QString,quint16,QString,QList<QVariant>)), SLOT(incomingMessage(QString,quint16,QString,QList<QVariant>))); for(quint16 projectIndex = 0 ; projectIndex < projectCount ; projectIndex++) { settings.setArrayIndex(projectIndex); Project *project = new Project(settings.value("name").toString(), settings.value("friendlyName").toString(), true, QFileInfo(settings.value("path").toString()), this); addProject(project); } settings.endArray(); //foreach(ProjectInterface *project, Global::projects) // project->load(); //Global settings creation if needed globalSettings = new QSettings(); if((globalSettings) && ((!globalSettings->childKeys().contains("id")) || (arguments.contains("-newuser")))) { firstTimeOpened = true; qsrand(QDateTime::currentDateTime().toTime_t()); updateAnonymousId = QString::number(qrand()); globalSettings->setValue("id", updateAnonymousId); globalSettings->setValue("version", ""); globalSettings->setValue("updatePeriod", 1); globalSettings->setValue("lastUpdate", QDateTime(QDate(2000, 01, 01))); } //Update management if((globalSettings) && (globalSettings->childKeys().contains("id"))) { QDateTime updateLastDate = globalSettings->value("lastUpdate") .toDateTime(); quint16 updatePeriod = globalSettings->value("updatePeriod").toUInt(); updateAnonymousId = globalSettings->value("id") .toString(); QString applicationVersionSettings = globalSettings->value("version").toString(); if(applicationVersionSettings != QCoreApplication::applicationVersion()) { globalSettings->setValue("version", QCoreApplication::applicationVersion()); firstTimeOpened = true; } qDebug("Last update : %s (should update each %d day(s))", qPrintable(updateLastDate.toString("dd/MM/yyyy hh:mm:ss")), updatePeriod); if((updateLastDate.daysTo(QDateTime::currentDateTime()) >= updatePeriod) || (forceUpdate)) checkForUpdates(); } askScreenshot = askAddProject = 0; startTimer(50); if(firstTimeOpened) showMessage(tr("Welcome!\nRekall is now running!")); else showMessage(tr("Rekall is now running!")); if(!arguments.contains("-silent")) openWebPage(); /* QWebView *webView = new QWebView(); webView->load(QUrl("http://127.0.0.1:23411")); webView->show(); */ }