Files
Work/guitar/settingsdlg.hpp
2024-08-07 09:16:27 -04:00

53 lines
1.6 KiB
C++

#ifndef _GUITAR_SETTINGSDLG_HPP_
#define _GUITAR_SETTINGSDLG_HPP_
#ifndef _COMMON_DWINDOW_HPP_
#include <common/dwindow.hpp>
#endif
#ifndef _COMMON_SMARTPOINTER_HPP_
#include <common/pointer.hpp>
#endif
#ifndef _COMMON_GLOBALDATA_HPP_
#include <common/gdata.hpp>
#endif
#ifndef _GUITAR_INSTRUMENT_HPP_
#include <guitar/Instrument.hpp>
#endif
class SettingsDialog : public DWindow
{
public:
SettingsDialog(void);
virtual ~SettingsDialog();
bool perform(GUIWindow &parentWindow);
private:
SettingsDialog(const SettingsDialog &someSettingsDialog);
SettingsDialog &operator=(const SettingsDialog &someSettingsDialog);
CallbackData::ReturnType initHandler(CallbackData &someCallbackData);
CallbackData::ReturnType createHandler(CallbackData &someCallbackData);
CallbackData::ReturnType closeHandler(CallbackData &someCallbackData);
CallbackData::ReturnType destroyHandler(CallbackData &someCallbackData);
CallbackData::ReturnType commandHandler(CallbackData &someCallbackData);
void initialize(void);
void selectInstrument(Instrument instrument);
void selectDefaults(void);
void selectTiming(int timing);
void selectAction(bool action);
void selectShowNotes(bool showNotes);
void selectMIDIOutputDevice(const String &midiOutputDevice);
String getMIDIOutputDevice(void);
Instrument getInstrument(void);
bool getShowNotes(void);
bool getAction(void);
int getTiming(void);
void apply(void);
Callback<SettingsDialog> mInitHandler;
Callback<SettingsDialog> mCreateHandler;
Callback<SettingsDialog> mCloseHandler;
Callback<SettingsDialog> mDestroyHandler;
Callback<SettingsDialog> mCommandHandler;
Instruments mInstruments;
Point mDisplayPoint;
};
#endif