1//============================================================================
2//
3// SSSS tt lll lll
4// SS SS tt ll ll
5// SS tttttt eeee ll ll aaaa
6// SSSS tt ee ee ll ll aa
7// SS tt eeeeee ll ll aaaaa -- "An Atari 2600 VCS Emulator"
8// SS SS tt ee ll ll aa aa
9// SSSS ttt eeeee llll llll aaaaa
10//
11// Copyright (c) 1995-2019 by Bradford W. Mott, Stephen Anthony
12// and the Stella Team
13//
14// See the file "License.txt" for information on usage and redistribution of
15// this file, and for a DISCLAIMER OF ALL WARRANTIES.
16//============================================================================
17
18#ifndef LOGGER_DIALOG_HXX
19#define LOGGER_DIALOG_HXX
20
21class GuiObject;
22class CheckboxWidget;
23class PopUpWidget;
24class StringListWidget;
25
26#include "Dialog.hxx"
27#include "bspf.hxx"
28
29class LoggerDialog : public Dialog
30{
31 public:
32 LoggerDialog(OSystem& osystem, DialogContainer& parent,
33 const GUI::Font& font, int max_w, int max_h,
34 bool useLargeFont = true);
35 virtual ~LoggerDialog() = default;
36
37 private:
38 void loadConfig() override;
39 void saveConfig() override;
40 void saveLogFile();
41
42 void handleCommand(CommandSender* sender, int cmd, int data, int id) override;
43
44 private:
45 StringListWidget* myLogInfo;
46 PopUpWidget* myLogLevel;
47 CheckboxWidget* myLogToConsole;
48
49 private:
50 // Following constructors and assignment operators not supported
51 LoggerDialog() = delete;
52 LoggerDialog(const LoggerDialog&) = delete;
53 LoggerDialog(LoggerDialog&&) = delete;
54 LoggerDialog& operator=(const LoggerDialog&) = delete;
55 LoggerDialog& operator=(LoggerDialog&&) = delete;
56};
57
58#endif
59