RelayFile/UserInterface/OnLineControl.h

42 lines
973 B
C++

#ifndef ONLINECONTROL_H
#define ONLINECONTROL_H
#include "InterfaceDefine.hpp"
#include <InfoClient.hpp>
#include <mutex>
class HeaderControl;
class LogControl;
class ClientCore;
class OnlineControl : public wxPanel
{
public:
OnlineControl(wxWindow* parent, std::shared_ptr<ClientCore>& clientCore);
~OnlineControl() override;
public:
void SetHeaderControl(HeaderControl* headerControl);
void SetLogControl(LogControl* logControl);
private:
void Init();
void InitCall();
void OnFreshClients(wxCommandEvent& event);
private:
void OnFreshClientsCall(const InfoClientVec& infoClientVec);
public:
wxButton* btnFresh_;
std::mutex mutex_;
wxStaticText* lbCurState_;
wxStaticText* elbCurState_;
wxStaticText* lbCurPoint_;
wxStaticText* elbCurPoint_;
wxListBox* onLineList_;
HeaderControl* headerControl_;
LogControl* logControl_;
std::shared_ptr<ClientCore> clientCore_;
};
#endif // ONLINECONTROL_H