#ifndef _GUITAR_SETTINGSDLG_HPP_ #define _GUITAR_SETTINGSDLG_HPP_ #ifndef _COMMON_DWINDOW_HPP_ #include #endif #ifndef _COMMON_SMARTPOINTER_HPP_ #include #endif #ifndef _COMMON_GLOBALDATA_HPP_ #include #endif #ifndef _GUITAR_INSTRUMENT_HPP_ #include #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 mInitHandler; Callback mCreateHandler; Callback mCloseHandler; Callback mDestroyHandler; Callback mCommandHandler; Instruments mInstruments; Point mDisplayPoint; }; #endif