#ifndef DATAMANAGER_H #define DATAMANAGER_H #include #include #include #include "protocol.h" #include "tcpclient.h" class DataManager : public QObject { Q_OBJECT public: static DataManager* getInstance(); private: explicit DataManager(QObject *parent = nullptr); //static void recv_from_server(QString &peerAddress,quint16 peerPort,QByteArray &data); //static Protocol *protocol; //static DataManager *p_this; Protocol *protocol; TCPClient *tcpclient; bool connect_flag = false; QString _user; signals: void connect_to_server(); void disconnect_from_server(); void new_message(); void update_code(QString code); void update_line(QString data); void signin_response(bool result); void signup_response(bool result); void update_text(QString sendname,QString data); void update_file(QString sendname,QString filename,QString file_data); void update_file_private(QString sendname,QString filename,QString file_data); void update_users(int count,QListonline_users); void handle_count(QString count); public slots: /*******ui界面********/ void Register(QString username,QString password); void signin_request(QString username,QString password); /******WIDGET*****/ //void send_text(QString sendname,QString text); //void send_to_user(QString sendname,QString to_user,QString text); //void send_file_to_all(QString sendname,QString filename,QByteArray file); //void send_file_private(QString sendname,QString filename,QByteArray file,QString name); void update_namelist(QString username); void account_cancellation(QString username); void pick_up(QString code); void parking(); void find_code(); void update_count(); /******TCPClient******/ void TCPClientConnected(); void TCPClientDisconnected(); void recv_from_server(QByteArray data); }; #endif // DATAMANAGER_H