Esempio n. 1
0
void ClientThread::process()
{
    m_tcpSocket = new QTcpSocket();
    if (!m_tcpSocket->setSocketDescriptor(m_socket))
        return;

    connect(&m_serverPackageManager, SIGNAL(readySend()), SLOT(readySend()));
    connect(m_tcpSocket, SIGNAL(readyRead()), SLOT(readyRead()));
    connect(m_tcpSocket, SIGNAL(disconnected()), SLOT(disconnected()));
}
Esempio n. 2
0
void LoginPage::login(){
        QString badnick = "ser*ver";
        QString str ="";
        QString log ="";
        QString pass ="";
        if(t_login->text()!="" && t_pass->text()!="" )//если не пустые
        {
            log = t_login->text();
            pass = t_pass->text();
             if(log!=badnick && log.length()<15 && log[0] != '#' && log.contains('*',Qt::CaseInsensitive) == false)
                //имя не=ser*ver, не больше 15 символов и первый симовл не # ,не содержит * а пароль меньше 10 симолов
            {
                    if(pass.length()<10){
                        str ="#type/log#o/login#id/" + log + "#p/" + pass+"#/"; //отправляем сформированную строку-сообщение
                            emit readySend(str);
                    }
                    else{
                            MMessageBox* r=new MMessageBox("Error!","Incorrect password",M::OkButton);//сообщение некорректный пароль
                            r->appear();
                     }
            }
            else
            {
                 MMessageBox* r=new MMessageBox("Error!","Incorrect login",M::OkButton);//сообщение некорректный логин
                 r->appear();
            }

        }
        else
        {
            MMessageBox* r=new MMessageBox("Error!","Please fill in all fields",M::OkButton);//сообшение не заполнили все поля
            r->appear();
        }

    }
Esempio n. 3
0
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 RegistrationPage::tryToReg()
{
    QString str1,str2;
    QString badnick = "ser*ver";

    str1=t_repeat->text();
    str2=t_pass->text();

    if(str1==str2)
    {
        log=t_login->text();
        pass=t_pass->text();
        if(log!="" && pass!="" )//если не пустые
        {

             if(log!=badnick &&log.length()<15 && log[0] != '#' && log.contains('*',Qt::CaseInsensitive) == false)
                //имя не=ser*ver, не больше 15 символов и первый симовл не # ,не содержит * а пароль меньше 10 симолов
            {
                    if(pass.length()<10){
                        str1="#type/log#o/registration#l/"+log+"#p/"+pass+"#/"; //отправляем сформированную строку-сообщение
                           emit readySend(str1);
                    }
                    else{
                            MMessageBox* r=new MMessageBox("Error!","Incorrect password",M::OkButton);//сообщение некорректный пароль

                            r->appear();
                    }
            }
            else
            {
                 MMessageBox* r=new MMessageBox("Error!","Incorrect login",M::OkButton);//сообщение некорректный логин
                 r->appear();
            }


        }
        else
        {

             MMessageBox* r=new MMessageBox("Error!","Please fill in all fields",M::OkButton); //сообшение не заполнили все поля
            r->appear();
         }
    }
    else
    {
        log="";
        pass="";
        emit loadInfoPage(3);
    }

    badnick.clear();
    str1.clear();
    t_login->clear();
    t_pass->clear();
    t_repeat->clear();

}