1
// Copyright 2013 Dolphin Emulator Project
2
// Licensed under GPLv2
3
// Refer to the license.txt file included.
8
#include "LogManager.h"
29
// Uses multiple inheritance - only sane because LogListener is a pure virtual interface.
30
class CLogWindow : public wxPanel, LogListener
33
CLogWindow(CFrame *parent,
34
wxWindowID id = wxID_ANY,
35
const wxPoint& pos = wxDefaultPosition,
36
const wxSize& size = wxDefaultSize,
37
long style = wxTAB_TRAVERSAL,
38
const wxString& name = _("Log")
43
void Log(LogTypes::LOG_LEVELS, const char *text);
49
wxFont DefaultFont, MonoSpaceFont;
50
std::vector<wxFont> LogFont;
52
bool m_ignoreLogTimer;
53
LogManager *m_LogManager;
54
std::queue<std::pair<u8, wxString> > msgQueue;
55
bool m_writeFile, m_writeConsole, m_writeWindow, m_writeDebugger, m_LogAccess;
59
wxTextCtrl *m_Log, *m_cmdline;
60
wxChoice *m_FontChoice;
61
wxCheckBox *m_WrapLine;
63
std::mutex m_LogSection;
67
wxTextCtrl * CreateTextCtrl(wxPanel* parent, wxWindowID id, long Style);
68
void CreateGUIControls();
69
void PopulateBottom();
70
void UnPopulateBottom();
71
void OnClose(wxCloseEvent& event);
72
void OnSubmit(wxCommandEvent& event);
73
void OnFontChange(wxCommandEvent& event);
74
void OnWrapLineCheck(wxCommandEvent& event);
75
void OnClear(wxCommandEvent& event);
76
void OnLogTimer(wxTimerEvent& WXUNUSED(event));
80
const char *getName() const { return "LogWindow"; }
83
#endif /*LOGWINDOW_H_*/