CCIMXDesktop
 
Loading...
Searching...
No Matches
CommunicateMainWindow.h
1#ifndef COMMUNICATEMAINWINDOW_H
2#define COMMUNICATEMAINWINDOW_H
3#include "core/sessions/SessionInfo.h"
4#include "ui/ToolSide/ToolsEnum.h"
5#include <QMainWindow>
6#include <QMap>
7
8QT_BEGIN_NAMESPACE
9namespace Ui {
11}
12QT_END_NAMESPACE
13class PeerConnection;
14class SessionHub;
15class InfoWidget;
16class Session;
18class SettingsWidget;
19class CommunicateMainWindow : public QMainWindow {
20 Q_OBJECT
21
22public:
23 CommunicateMainWindow(QWidget* parent = nullptr);
25
26private slots:
27 void onContactChanged(Session* session);
28 void onSend(const QString& text);
29 void switch_page(ToolsEnums::Functionality enumType);
30 void process_new_connections(const QString& name, const QString& ip, const int port);
31
32 void process_session_ready(Session* s, const SessionInfo& sessionInfo);
33 void process_text_received(Session* s, const QString& text);
34
35private:
36 void init_message_page();
37 void init_self_page();
38 void init_settings_page();
39 void init_connector_page();
40 void init_history_manager();
41 void init_session_hubs();
42 std::vector<int> collect_activate_ports();
43 Ui::CommunicateMainWindow* ui;
44 QPixmap pixmap;
45 QMap<ToolsEnums::Functionality, QWidget*> router;
46 InfoWidget* info_page;
47 SettingsWidget* settings_widget;
48 SessionInfo local_info;
49 SessionHub* sessionHub;
50 HistoryManagerSchedular* history_manager;
51};
52#endif // COMMUNICATEMAINWINDOW_H
Definition CommunicateMainWindow.h:19
Definition HistoryManagerSchedular.h:9
Definition InfoWidget.h:8
socket positive
Definition PeerConnection.h:8
Definition SessionHub.h:11
Definition SessionInfo.h:4
Definition Session.h:11
Definition SettingsWidget.h:7